[Pkg-cli-apps-commits] [SCM] banshee branch, experimental, updated. debian/1.9.0-1-10-g93a69ad

Iain Lane laney at ubuntu.com
Sun Dec 19 20:34:27 UTC 2010


The following commit has been merged in the experimental branch:
commit 06e753e2b8585af7fe71c6fe91e8225dd812072c
Author: Chow Loong Jin <hyperair at ubuntu.com>
Date:   Sun Nov 21 12:14:04 2010 +0800

    Imported Upstream version 1.9.0+git20101121.r1.b13266e

diff --git a/ChangeLog b/ChangeLog
index 589fea4..cb03048 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,4 @@
-2010-11-10  The Banshee Project  <http://banshee.fm>
+2010-11-21  The Banshee Project  <http://banshee.fm>
 
 	Banshee 1.9.0
 
diff --git a/Makefile.am b/Makefile.am
index 3ae24a4..228fad9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -61,6 +61,9 @@ check-bootstrap-env:
 run: check-bootstrap-env $(MO_FILES)
 	(cd bin; $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) Nereid.exe --debug --uninstalled $(BANSHEE_DEV_OPTIONS))
 
+run-profiled: check-bootstrap-env $(MO_FILES)
+	(cd bin; LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/usr/local/lib $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) --profile=log:time=fast,calls,noalloc,maxframes=5 Nereid.exe --uninstalled $(BANSHEE_DEV_OPTIONS))
+
 run-logged: check-bootstrap-env $(MO_FILES)
 	(cd bin; $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) Nereid.exe --debug --uninstalled $(BANSHEE_DEV_OPTIONS) | tee last-run-log)
 
@@ -72,7 +75,7 @@ run-perf: run-logged
 
 run-trace: $(MO_FILES)
 	(cd bin; $(MONO) \
-		--trace=$$(find . -name "*dll" | sed 's/\.\///' | sed 's/\.dll//' | sed 's/Mono.Data.Sqlite//' | sort | tr "\n" , | sed 's/,$$//') \
+		--trace=$$(find . -name "*dll" | sed 's/\.\///' | sed 's/\.dll//' | sort | tr "\n" , | sed 's/,$$//') \
 		Nereid.exe --uninstalled $(BANSHEE_DEV_OPTIONS) > ../banshee.trace)
 
 run-profile-heap: $(MO_FILES)
diff --git a/Makefile.in b/Makefile.in
index 21c839a..6bf0230 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -82,6 +84,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
 CONFIG_CLEAN_FILES = build/m4/shave/shave build/m4/shave/shave-libtool
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -93,6 +96,9 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir dist dist-all distcheck
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
@@ -100,9 +106,34 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
 am__remove_distdir = \
-  { test ! -d $(distdir) \
-    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr $(distdir); }; }
+  { test ! -d "$(distdir)" \
+    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+         && rm -fr "$(distdir)"; }; }
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).zip
 GZIP_ENV = --best
 distuninstallcheck_listfiles = find . -type f -print
@@ -224,29 +255,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -281,6 +293,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -322,9 +335,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -465,15 +481,15 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
-	      cd $(srcdir) && $(AUTOMAKE) --foreign  \
+	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
+	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
 		&& exit 0; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -489,9 +505,10 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
 	$(SHELL) ./config.status --recheck
 
 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(srcdir) && $(AUTOCONF)
+	$(am__cd) $(srcdir) && $(AUTOCONF)
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
 
 config.h: stamp-h1
 	@if test ! -f $@; then \
@@ -503,7 +520,7 @@ stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
 	@rm -f stamp-h1
 	cd $(top_builddir) && $(SHELL) ./config.status config.h
 $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
-	cd $(top_srcdir) && $(AUTOHEADER)
+	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
 	rm -f stamp-h1
 	touch $@
 
@@ -521,7 +538,7 @@ clean-libtool:
 	-rm -rf .libs _libs
 
 distclean-libtool:
-	-rm -f libtool
+	-rm -f libtool config.lt
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -530,7 +547,7 @@ distclean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -547,7 +564,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -555,7 +572,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -581,16 +598,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -598,14 +615,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -617,7 +634,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
@@ -626,36 +643,41 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
 	$(am__remove_distdir)
-	test -d $(distdir) || mkdir $(distdir)
+	test -d "$(distdir)" || mkdir "$(distdir)"
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -671,29 +693,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -701,11 +738,13 @@ distdir: $(DISTFILES)
 	$(MAKE) $(AM_MAKEFLAGS) \
 	  top_distdir="$(top_distdir)" distdir="$(distdir)" \
 	  dist-hook
-	-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+	-test -n "$(am__skip_mode_fix)" \
+	|| find "$(distdir)" -type d ! -perm -755 \
+		-exec chmod u+rwx,go+rx {} \; -o \
 	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
 	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
 	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
-	|| chmod -R a+r $(distdir)
+	|| chmod -R a+r "$(distdir)"
 dist-gzip: distdir
 	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
 	$(am__remove_distdir)
@@ -717,6 +756,10 @@ dist-lzma: distdir
 	tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
 	$(am__remove_distdir)
 
+dist-xz: distdir
+	tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
+	$(am__remove_distdir)
+
 dist-tarZ: distdir
 	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
 	$(am__remove_distdir)
@@ -742,15 +785,17 @@ dist dist-all: distdir
 distcheck: dist
 	case '$(DIST_ARCHIVES)' in \
 	*.tar.gz*) \
-	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
 	*.tar.bz2*) \
-	  bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
 	*.tar.lzma*) \
-	  unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+	*.tar.xz*) \
+	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
 	*.tar.Z*) \
 	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
 	*.shar.gz*) \
-	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
 	esac
@@ -758,9 +803,11 @@ distcheck: dist
 	mkdir $(distdir)/_build
 	mkdir $(distdir)/_inst
 	chmod a-w $(distdir)
+	test -d $(distdir)/_build || exit 0; \
 	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
 	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
-	  && cd $(distdir)/_build \
+	  && am__cwd=`pwd` \
+	  && $(am__cd) $(distdir)/_build \
 	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
 	    $(DISTCHECK_CONFIGURE_FLAGS) \
 	  && $(MAKE) $(AM_MAKEFLAGS) \
@@ -782,13 +829,15 @@ distcheck: dist
 	  && rm -rf "$$dc_destdir" \
 	  && $(MAKE) $(AM_MAKEFLAGS) dist \
 	  && rm -rf $(DIST_ARCHIVES) \
-	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+	  && cd "$$am__cwd" \
+	  || exit 1
 	$(am__remove_distdir)
 	@(echo "$(distdir) archives ready for distribution: "; \
 	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
 	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
 distuninstallcheck:
-	@cd $(distuninstallcheck_dir) \
+	@$(am__cd) '$(distuninstallcheck_dir)' \
 	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
 	   || { echo "ERROR: files left after uninstall:" ; \
 	        if test -n "$(DESTDIR)"; then \
@@ -831,6 +880,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -853,6 +903,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -861,18 +913,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -896,26 +958,26 @@ ps-am:
 uninstall-am:
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip uninstall-am
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
+	ctags-recursive install-am install-strip tags-recursive \
+	uninstall-am
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am am--refresh check check-am clean clean-generic \
 	clean-libtool clean-local ctags ctags-recursive dist dist-all \
 	dist-bzip2 dist-gzip dist-hook dist-lzma dist-shar dist-tarZ \
-	dist-zip distcheck distclean distclean-generic distclean-hdr \
-	distclean-libtool distclean-tags distcleancheck distdir \
-	distuninstallcheck dvi dvi-am html html-am info info-am \
-	install install-am install-data install-data-am install-dvi \
-	install-dvi-am install-exec install-exec-am install-html \
-	install-html-am install-info install-info-am install-man \
-	install-pdf install-pdf-am install-ps install-ps-am \
-	install-strip installcheck installcheck-am installdirs \
-	installdirs-am maintainer-clean maintainer-clean-generic \
-	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
-	ps ps-am tags tags-recursive uninstall uninstall-am \
-	uninstall-hook
+	dist-xz dist-zip distcheck distclean distclean-generic \
+	distclean-hdr distclean-libtool distclean-tags distcleancheck \
+	distdir distuninstallcheck dvi dvi-am html html-am info \
+	info-am install install-am install-data install-data-am \
+	install-dvi install-dvi-am install-exec install-exec-am \
+	install-html install-html-am install-info install-info-am \
+	install-man install-pdf install-pdf-am install-ps \
+	install-ps-am install-strip installcheck installcheck-am \
+	installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-hook
 
 
 # Important targets
@@ -963,6 +1025,9 @@ check-bootstrap-env:
 run: check-bootstrap-env $(MO_FILES)
 	(cd bin; $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) Nereid.exe --debug --uninstalled $(BANSHEE_DEV_OPTIONS))
 
+run-profiled: check-bootstrap-env $(MO_FILES)
+	(cd bin; LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/usr/local/lib $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) --profile=log:time=fast,calls,noalloc,maxframes=5 Nereid.exe --uninstalled $(BANSHEE_DEV_OPTIONS))
+
 run-logged: check-bootstrap-env $(MO_FILES)
 	(cd bin; $(MONO) --debug $(BANSHEE_DEV_MONO_OPTIONS) Nereid.exe --debug --uninstalled $(BANSHEE_DEV_OPTIONS) | tee last-run-log)
 
@@ -974,7 +1039,7 @@ run-perf: run-logged
 
 run-trace: $(MO_FILES)
 	(cd bin; $(MONO) \
-		--trace=$$(find . -name "*dll" | sed 's/\.\///' | sed 's/\.dll//' | sed 's/Mono.Data.Sqlite//' | sort | tr "\n" , | sed 's/,$$//') \
+		--trace=$$(find . -name "*dll" | sed 's/\.\///' | sed 's/\.dll//' | sort | tr "\n" , | sed 's/,$$//') \
 		Nereid.exe --uninstalled $(BANSHEE_DEV_OPTIONS) > ../banshee.trace)
 
 run-profile-heap: $(MO_FILES)
@@ -1053,6 +1118,7 @@ package-po: check-since
 		echo 'No po changes since $(SINCE)'; \
 		exit 0; \
 	fi
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/NEWS b/NEWS
index e665070..3dde191 100644
--- a/NEWS
+++ b/NEWS
@@ -91,8 +91,9 @@ Sources
 -------
 
     * Banshee 1.9.0 Tarballs:
-      http://download.banshee.fm/banshee/stable/1.9.0/banshee-1-1.9.0.tar.bz2
-      http://download.banshee.fm/banshee/stable/1.9.0/banshee-1-1.9.0.tar.gz
+      http://download.banshee.fm/banshee/unstable/1.9.0/banshee-1-1.9.0.tar.bz2
+      http://download.banshee.fm/banshee/unstable/1.9.0/banshee-1-1.9.0.tar.gz
+    * http://download.banshee.fm/banshee/unstable/1.9.0/banshee-1-1.9.0.sha256sum
 
 Packages
 --------
@@ -109,14 +110,7 @@ Packages
 
     Binaries for Mac OS X 10.5 and 10.6:
 
-    * http://download.banshee.fm/banshee/stable/1.9.0/banshee-1-1.8.0.macosx.intel.dmg
-
-ChangeLogs & Checksums
-----------------------
-
-    * http://download.banshee.fm/banshee/stable/1.9.0/banshee-1-1.9.0.changes
-    * http://download.banshee.fm/banshee/stable/1.9.0/banshee-1-1.9.0.sha256sum
-
+    * http://download.banshee.fm/banshee/stable/1.8.0/banshee-1-1.8.0.macosx.intel.dmg
 
 ===============================================================================
 DEPENDENCIES
diff --git a/aclocal.m4 b/aclocal.m4
index c8da7fd..d96df47 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -13,8 +13,8 @@
 
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(AC_AUTOCONF_VERSION, [2.63],,
-[m4_warning([this file was generated for autoconf 2.63.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],,
+[m4_warning([this file was generated for autoconf 2.67.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically `autoreconf'.])])
@@ -159,9 +159,8 @@ main ()
 {
   int major, minor, micro;
   char *tmp_version;
-  int ignored;
 
-  ignored = system ("touch conf.glibtest");
+  fclose (fopen ("conf.glibtest", "w"));
 
   /* HP/UX 9 (%@#!) writes to sscanf strings */
   tmp_version = g_strdup("$min_glib_version");
@@ -559,7 +558,7 @@ msgstr ""
 
     dnl These rules are solely for the distribution goal.  While doing this
     dnl we only have to keep exactly one list of the available catalogs
-    dnl in configure.in.
+    dnl in configure.ac.
     for lang in $ALL_LINGUAS; do
       GMOFILES="$GMOFILES $lang.gmo"
       POFILES="$POFILES $lang.po"
@@ -632,6 +631,18 @@ glib_DEFUN([GLIB_GNU_GETTEXT],
      fi
    fi
 
+   dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
+   dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
+   dnl Try to locate is.
+   MKINSTALLDIRS=
+   if test -n "$ac_aux_dir"; then
+     MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
+   fi
+   if test -z "$MKINSTALLDIRS"; then
+     MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
+   fi
+   AC_SUBST(MKINSTALLDIRS)
+
    dnl Generate list of files to be processed by xgettext which will
    dnl be included in po/Makefile.
    test -d po || mkdir po
@@ -676,7 +687,7 @@ AC_DEFINE_UNQUOTED($1, "$localedir",
 dnl
 dnl Now the definitions that aclocal will find
 dnl
-ifdef(glib_configure_in,[],[
+ifdef(glib_configure_ac,[],[
 AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
 AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
 ])dnl
@@ -752,25 +763,25 @@ INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcar
     INTLTOOL_SERVICE_RULE='%.service: %.service.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
    INTLTOOL_POLICY_RULE='%.policy:    %.policy.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
 
-AC_SUBST(INTLTOOL_DESKTOP_RULE)
-AC_SUBST(INTLTOOL_DIRECTORY_RULE)
-AC_SUBST(INTLTOOL_KEYS_RULE)
-AC_SUBST(INTLTOOL_PROP_RULE)
-AC_SUBST(INTLTOOL_OAF_RULE)
-AC_SUBST(INTLTOOL_PONG_RULE)
-AC_SUBST(INTLTOOL_SERVER_RULE)
-AC_SUBST(INTLTOOL_SHEET_RULE)
-AC_SUBST(INTLTOOL_SOUNDLIST_RULE)
-AC_SUBST(INTLTOOL_UI_RULE)
-AC_SUBST(INTLTOOL_XAM_RULE)
-AC_SUBST(INTLTOOL_KBD_RULE)
-AC_SUBST(INTLTOOL_XML_RULE)
-AC_SUBST(INTLTOOL_XML_NOMERGE_RULE)
-AC_SUBST(INTLTOOL_CAVES_RULE)
-AC_SUBST(INTLTOOL_SCHEMAS_RULE)
-AC_SUBST(INTLTOOL_THEME_RULE)
-AC_SUBST(INTLTOOL_SERVICE_RULE)
-AC_SUBST(INTLTOOL_POLICY_RULE)
+_IT_SUBST(INTLTOOL_DESKTOP_RULE)
+_IT_SUBST(INTLTOOL_DIRECTORY_RULE)
+_IT_SUBST(INTLTOOL_KEYS_RULE)
+_IT_SUBST(INTLTOOL_PROP_RULE)
+_IT_SUBST(INTLTOOL_OAF_RULE)
+_IT_SUBST(INTLTOOL_PONG_RULE)
+_IT_SUBST(INTLTOOL_SERVER_RULE)
+_IT_SUBST(INTLTOOL_SHEET_RULE)
+_IT_SUBST(INTLTOOL_SOUNDLIST_RULE)
+_IT_SUBST(INTLTOOL_UI_RULE)
+_IT_SUBST(INTLTOOL_XAM_RULE)
+_IT_SUBST(INTLTOOL_KBD_RULE)
+_IT_SUBST(INTLTOOL_XML_RULE)
+_IT_SUBST(INTLTOOL_XML_NOMERGE_RULE)
+_IT_SUBST(INTLTOOL_CAVES_RULE)
+_IT_SUBST(INTLTOOL_SCHEMAS_RULE)
+_IT_SUBST(INTLTOOL_THEME_RULE)
+_IT_SUBST(INTLTOOL_SERVICE_RULE)
+_IT_SUBST(INTLTOOL_POLICY_RULE)
 
 # Check the gettext tools to make sure they are GNU
 AC_PATH_PROG(XGETTEXT, xgettext)
@@ -787,12 +798,17 @@ if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
     AC_MSG_ERROR([GNU gettext tools not found; required for intltool])
 fi
 
-AC_PATH_PROG(INTLTOOL_PERL, [perl])
+AC_PATH_PROG(INTLTOOL_PERL, perl)
 if test -z "$INTLTOOL_PERL"; then
-   AC_MSG_ERROR([perl not found; required for intltool])
+   AC_MSG_ERROR([perl not found])
 fi
-if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then
-   AC_MSG_ERROR([perl 5.x required for intltool])
+AC_MSG_CHECKING([for perl >= 5.8.1])
+$INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1
+if test $? -ne 0; then
+   AC_MSG_ERROR([perl 5.8.1 is required for intltool])
+else
+   IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`"
+   AC_MSG_RESULT([$IT_PERL_VERSION])
 fi
 if test "x$2" != "xno-xml"; then
    AC_MSG_CHECKING([for XML::Parser])
@@ -844,11 +860,11 @@ IT_PO_SUBDIR([po])
 AC_DEFUN([IT_PO_SUBDIR],
 [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS.
 dnl
-dnl The following CONFIG_COMMANDS should be exetuted at the very end
+dnl The following CONFIG_COMMANDS should be executed at the very end
 dnl of config.status.
 AC_CONFIG_COMMANDS_PRE([
   AC_CONFIG_COMMANDS([$1/stamp-it], [
-    if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" ]; then
+    if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then
        AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.])
     fi
     rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp"
@@ -870,6 +886,17 @@ AC_CONFIG_COMMANDS_PRE([
 ])dnl
 ])
 
+# _IT_SUBST(VARIABLE)
+# -------------------
+# Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST
+#
+AC_DEFUN([_IT_SUBST],
+[
+AC_SUBST([$1])
+m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])])
+]
+)
+
 # deprecated macros
 AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL])
 # A hint is needed for aclocal from Automake <= 1.9.4:
@@ -3317,7 +3344,7 @@ linux*oldld* | linux*aout* | linux*coff*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -3357,6 +3384,18 @@ linux* | k*bsd*-gnu)
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
+netbsdelf*-gnu)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='NetBSD ld.elf_so'
+  ;;
+
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -3944,11 +3983,11 @@ irix5* | irix6* | nonstopux*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
   else
@@ -4565,7 +4604,7 @@ m4_if([$1], [CXX], [
 	    ;;
 	esac
 	;;
-      linux* | k*bsd*-gnu)
+      linux* | k*bsd*-gnu | kopensolaris*-gnu)
 	case $cc_basename in
 	  KCC*)
 	    # KAI C++ Compiler
@@ -4629,7 +4668,7 @@ m4_if([$1], [CXX], [
 	    ;;
 	esac
 	;;
-      netbsd*)
+      netbsd* | netbsdelf*-gnu)
 	;;
       *qnx* | *nto*)
         # QNX uses GNU C++, but need to define -shared option too, otherwise
@@ -4849,7 +4888,7 @@ m4_if([$1], [CXX], [
       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
       ;;
 
-    linux* | k*bsd*-gnu)
+    linux* | k*bsd*-gnu | kopensolaris*-gnu)
       case $cc_basename in
       # old Intel for x86_64 which still supported -KPIC.
       ecc*)
@@ -5054,6 +5093,9 @@ m4_if([$1], [CXX], [
   cygwin* | mingw* | cegcc*)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
+  linux* | k*bsd*-gnu)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+  ;;
   *)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
@@ -5118,6 +5160,9 @@ dnl Note also adjust exclude_expsyms for C++ above.
   openbsd*)
     with_gnu_ld=no
     ;;
+  linux* | k*bsd*-gnu)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+    ;;
   esac
 
   _LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5139,6 +5184,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     fi
     supports_anon_versioning=no
     case `$LD -v 2>&1` in
+      *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
       *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
@@ -5230,7 +5276,7 @@ _LT_EOF
       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    gnu* | linux* | tpf* | k*bsd*-gnu)
+    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
       if test "$host_os" = linux-dietlibc; then
 	case $cc_basename in
@@ -5300,7 +5346,7 @@ _LT_EOF
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -5475,6 +5521,7 @@ _LT_EOF
 	if test "$aix_use_runtimelinking" = yes; then
 	  shared_flag="$shared_flag "'${wl}-G'
 	fi
+	_LT_TAGVAR(link_all_deplibs, $1)=no
       else
 	# not using gcc
 	if test "$host_cpu" = ia64; then
@@ -5713,7 +5760,7 @@ _LT_EOF
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -6709,7 +6756,7 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(inherit_rpath, $1)=yes
         ;;
 
-      linux* | k*bsd*-gnu)
+      linux* | k*bsd*-gnu | kopensolaris*-gnu)
         case $cc_basename in
           KCC*)
 	    # Kuck and Associates, Inc. (KAI) C++ Compiler
@@ -8716,15 +8763,15 @@ m4_define([lt_dict_filter],
 
 # Generated from ltversion.in.
 
-# serial 3012 ltversion.m4
+# serial 3017 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.2.6])
-m4_define([LT_PACKAGE_REVISION], [1.3012])
+m4_define([LT_PACKAGE_VERSION], [2.2.6b])
+m4_define([LT_PACKAGE_REVISION], [1.3017])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.2.6'
-macro_revision='1.3012'
+[macro_version='2.2.6b'
+macro_revision='1.3017'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])
@@ -8822,8 +8869,9 @@ m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
 m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
 m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
 
-# nls.m4 serial 3 (gettext-0.15)
-dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, Inc.
+# nls.m4 serial 5 (gettext-0.18)
+dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation,
+dnl Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -8841,20 +8889,21 @@ dnl Authors:
 dnl   Ulrich Drepper <drepper at cygnus.com>, 1995-2000.
 dnl   Bruno Haible <haible at clisp.cons.org>, 2000-2003.
 
-AC_PREREQ(2.50)
+AC_PREREQ([2.50])
 
 AC_DEFUN([AM_NLS],
 [
   AC_MSG_CHECKING([whether NLS is requested])
   dnl Default is enabled NLS
-  AC_ARG_ENABLE(nls,
+  AC_ARG_ENABLE([nls],
     [  --disable-nls           do not use Native Language Support],
     USE_NLS=$enableval, USE_NLS=yes)
-  AC_MSG_RESULT($USE_NLS)
-  AC_SUBST(USE_NLS)
+  AC_MSG_RESULT([$USE_NLS])
+  AC_SUBST([USE_NLS])
 ])
 
 # pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
+# serial 1 (pkg-config-0.24)
 # 
 # Copyright © 2004 Scott James Remnant <scott at netsplit.com>.
 #
@@ -8882,7 +8931,10 @@ AC_DEFUN([AM_NLS],
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
 m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
+AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
+AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
+AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
+
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
 fi
@@ -8895,7 +8947,6 @@ if test -n "$PKG_CONFIG"; then
 		AC_MSG_RESULT([no])
 		PKG_CONFIG=""
 	fi
-		
 fi[]dnl
 ])# PKG_PROG_PKG_CONFIG
 
@@ -8904,21 +8955,20 @@ fi[]dnl
 # Check to see whether a particular set of modules exists.  Similar
 # to PKG_CHECK_MODULES(), but does not set variables or print errors.
 #
-#
-# Similar to PKG_CHECK_MODULES, make sure that the first instance of
-# this or PKG_CHECK_MODULES is called, or make sure to call
-# PKG_CHECK_EXISTS manually
+# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+# only at the first occurence in configure.ac, so if the first place
+# it's called might be skipped (such as if it is within an "if", you
+# have to call PKG_CHECK_EXISTS manually
 # --------------------------------------------------------------
 AC_DEFUN([PKG_CHECK_EXISTS],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 if test -n "$PKG_CONFIG" && \
     AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
-  m4_ifval([$2], [$2], [:])
+  m4_default([$2], [:])
 m4_ifvaln([$3], [else
   $3])dnl
 fi])
 
-
 # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
 # ---------------------------------------------
 m4_define([_PKG_CONFIG],
@@ -8971,6 +9021,7 @@ and $1[]_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.])
 
 if test $pkg_failed = yes; then
+   	AC_MSG_RESULT([no])
         _PKG_SHORT_ERRORS_SUPPORTED
         if test $_pkg_short_errors_supported = yes; then
 	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
@@ -8980,7 +9031,7 @@ if test $pkg_failed = yes; then
 	# Put the nasty error message in config.log where it belongs
 	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
 
-	ifelse([$4], , [AC_MSG_ERROR(dnl
+	m4_default([$4], [AC_MSG_ERROR(
 [Package requirements ($2) were not met:
 
 $$1_PKG_ERRORS
@@ -8988,29 +9039,28 @@ $$1_PKG_ERRORS
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-_PKG_TEXT
-])],
-		[AC_MSG_RESULT([no])
-                $4])
+_PKG_TEXT])dnl
+        ])
 elif test $pkg_failed = untried; then
-	ifelse([$4], , [AC_MSG_FAILURE(dnl
+     	AC_MSG_RESULT([no])
+	m4_default([$4], [AC_MSG_FAILURE(
 [The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
 _PKG_TEXT
 
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
-		[$4])
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])dnl
+        ])
 else
 	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
 	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
         AC_MSG_RESULT([yes])
-	ifelse([$3], , :, [$3])
+	$3
 fi[]dnl
 ])# PKG_CHECK_MODULES
 
-# Copyright (C) 2002, 2003, 2005, 2006, 2007  Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -9022,10 +9072,10 @@ fi[]dnl
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.10'
+[am__api_version='1.11'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.10.1], [],
+m4_if([$1], [1.11.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -9039,12 +9089,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # AM_SET_CURRENT_AUTOMAKE_VERSION
 # -------------------------------
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.10.1])dnl
+[AM_AUTOMAKE_VERSION([1.11.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)])
+_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
@@ -9101,14 +9151,14 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 8
+# serial 9
 
 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
 # -------------------------------------
@@ -9121,6 +9171,7 @@ AC_SUBST([$1_TRUE])dnl
 AC_SUBST([$1_FALSE])dnl
 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
+m4_define([_AM_COND_VALUE_$1], [$2])dnl
 if $2; then
   $1_TRUE=
   $1_FALSE='#'
@@ -9134,14 +9185,14 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 9
+# serial 10
 
 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
 # written in clear, in which case automake, when reading aclocal.m4,
@@ -9198,6 +9249,16 @@ AC_CACHE_CHECK([dependency style of $depcc],
   if test "$am_compiler_list" = ""; then
      am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
   fi
+  am__universal=false
+  m4_case([$1], [CC],
+    [case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac],
+    [CXX],
+    [case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac])
+
   for depmode in $am_compiler_list; do
     # Setup a source with many dependencies, because some compilers
     # like to wrap large dependency lists on column 80 (with \), and
@@ -9215,7 +9276,17 @@ AC_CACHE_CHECK([dependency style of $depcc],
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs
+    am__obj=sub/conftest.${OBJEXT-o}
+    am__minus_obj="-o $am__obj"
     case $depmode in
+    gcc)
+      # This depmode causes a compiler race in universal mode.
+      test "$am__universal" = false || continue
+      ;;
     nosideeffect)
       # after this tag, mechanisms are not by side-effect, so they'll
       # only be used when explicitly requested
@@ -9225,19 +9296,23 @@ AC_CACHE_CHECK([dependency style of $depcc],
 	break
       fi
       ;;
+    msvisualcpp | msvcmsys)
+      # This compiler won't grok `-c -o', but also, the minuso test has
+      # not run yet.  These depmodes are late enough in the game, and
+      # so weak that their functioning should not be impacted.
+      am__obj=conftest.${OBJEXT-o}
+      am__minus_obj=
+      ;;
     none) break ;;
     esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       source=sub/conftest.c object=$am__obj \
        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
          >/dev/null 2>conftest.err &&
        grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
        grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
       # or remarks (even with -Werror).  So we grep stderr for any message
@@ -9294,57 +9369,68 @@ _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-#serial 3
+#serial 5
 
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[for mf in $CONFIG_FILES; do
-  # Strip MF so we end up with the name of the file.
-  mf=`echo "$mf" | sed -e 's/:.*$//'`
-  # Check whether this is an Automake generated Makefile or not.
-  # We used to match only the files named `Makefile.in', but
-  # some people rename them; so instead we look at the file content.
-  # Grep'ing the first line is not enough: some people post-process
-  # each Makefile.in and add a new line on top of each file to say so.
-  # Grep'ing the whole file is not good either: AIX grep has a line
-  # limit of 2048, but all sed's we know have understand at least 4000.
-  if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-    dirpart=`AS_DIRNAME("$mf")`
-  else
-    continue
-  fi
-  # Extract the definition of DEPDIR, am__include, and am__quote
-  # from the Makefile without running `make'.
-  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-  test -z "$DEPDIR" && continue
-  am__include=`sed -n 's/^am__include = //p' < "$mf"`
-  test -z "am__include" && continue
-  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-  # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n 's/^U = //p' < "$mf"`
-  # Find all dependency output files, they are included files with
-  # $(DEPDIR) in their names.  We invoke sed twice because it is the
-  # simplest approach to changing $(DEPDIR) to its actual value in the
-  # expansion.
-  for file in `sed -n "
-    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-    # Make sure the directory exists.
-    test -f "$dirpart/$file" && continue
-    fdir=`AS_DIRNAME(["$file"])`
-    AS_MKDIR_P([$dirpart/$fdir])
-    # echo "creating $dirpart/$file"
-    echo '# dummy' > "$dirpart/$file"
+[{
+  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # are listed without --file.  Let's play safe and only enable the eval
+  # if we detect the quoting.
+  case $CONFIG_FILES in
+  *\'*) eval set x "$CONFIG_FILES" ;;
+  *)   set x $CONFIG_FILES ;;
+  esac
+  shift
+  for mf
+  do
+    # Strip MF so we end up with the name of the file.
+    mf=`echo "$mf" | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile or not.
+    # We used to match only the files named `Makefile.in', but
+    # some people rename them; so instead we look at the file content.
+    # Grep'ing the first line is not enough: some people post-process
+    # each Makefile.in and add a new line on top of each file to say so.
+    # Grep'ing the whole file is not good either: AIX grep has a line
+    # limit of 2048, but all sed's we know have understand at least 4000.
+    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+      dirpart=`AS_DIRNAME("$mf")`
+    else
+      continue
+    fi
+    # Extract the definition of DEPDIR, am__include, and am__quote
+    # from the Makefile without running `make'.
+    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+    test -z "$DEPDIR" && continue
+    am__include=`sed -n 's/^am__include = //p' < "$mf"`
+    test -z "am__include" && continue
+    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+    # When using ansi2knr, U may be empty or an underscore; expand it
+    U=`sed -n 's/^U = //p' < "$mf"`
+    # Find all dependency output files, they are included files with
+    # $(DEPDIR) in their names.  We invoke sed twice because it is the
+    # simplest approach to changing $(DEPDIR) to its actual value in the
+    # expansion.
+    for file in `sed -n "
+      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+      # Make sure the directory exists.
+      test -f "$dirpart/$file" && continue
+      fdir=`AS_DIRNAME(["$file"])`
+      AS_MKDIR_P([$dirpart/$fdir])
+      # echo "creating $dirpart/$file"
+      echo '# dummy' > "$dirpart/$file"
+    done
   done
-done
+}
 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 
 
@@ -9376,13 +9462,13 @@ AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
 # Do all the work for Automake.                             -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008 Free Software Foundation, Inc.
+# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 13
+# serial 16
 
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
@@ -9399,7 +9485,7 @@ AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
 # arguments mandatory, and then we can depend on a new Autoconf
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.60])dnl
+[AC_PREREQ([2.62])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -9450,8 +9536,8 @@ AM_MISSING_PROG(AUTOCONF, autoconf)
 AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
 AM_MISSING_PROG(AUTOHEADER, autoheader)
 AM_MISSING_PROG(MAKEINFO, makeinfo)
-AM_PROG_INSTALL_SH
-AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
 AC_REQUIRE([AM_PROG_MKDIR_P])dnl
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
@@ -9459,24 +9545,37 @@ AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
-              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
-	      		     [_AM_PROG_TAR([v7])])])
+	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+			     [_AM_PROG_TAR([v7])])])
 _AM_IF_OPTION([no-dependencies],,
 [AC_PROVIDE_IFELSE([AC_PROG_CC],
-                  [_AM_DEPENDENCIES(CC)],
-                  [define([AC_PROG_CC],
-                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+		  [_AM_DEPENDENCIES(CC)],
+		  [define([AC_PROG_CC],
+			  defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_CXX],
-                  [_AM_DEPENDENCIES(CXX)],
-                  [define([AC_PROG_CXX],
-                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+		  [_AM_DEPENDENCIES(CXX)],
+		  [define([AC_PROG_CXX],
+			  defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-                  [_AM_DEPENDENCIES(OBJC)],
-                  [define([AC_PROG_OBJC],
-                          defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+		  [_AM_DEPENDENCIES(OBJC)],
+		  [define([AC_PROG_OBJC],
+			  defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
 ])
+_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
+dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
+dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
+dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_CONFIG_COMMANDS_PRE(dnl
+[m4_provide_if([_AM_COMPILER_EXEEXT],
+  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
 ])
 
+dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
+dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
+dnl mangled by Autoconf and run in a shell conditional statement.
+m4_define([_AC_COMPILER_EXEEXT],
+m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
+
 
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
@@ -9499,7 +9598,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -9510,7 +9609,14 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
+if test x"${install_sh}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\	*)
+    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+  *)
+    install_sh="\${SHELL} $am_aux_dir/install-sh"
+  esac
+fi
 AC_SUBST(install_sh)])
 
 # Copyright (C) 2003, 2005  Free Software Foundation, Inc.
@@ -9537,27 +9643,38 @@ AC_SUBST([am__leading_dot])])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 4
+# serial 5
 
+# AM_MAINTAINER_MODE([DEFAULT-MODE])
+# ----------------------------------
+# Control maintainer-specific portions of Makefiles.
+# Default is to disable them, unless `enable' is passed literally.
+# For symmetry, `disable' may be passed as well.  Anyway, the user
+# can override the default with the --enable/--disable switch.
 AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
-  dnl maintainer-mode is disabled by default
-  AC_ARG_ENABLE(maintainer-mode,
-[  --enable-maintainer-mode  enable make rules and dependencies not useful
+[m4_case(m4_default([$1], [disable]),
+       [enable], [m4_define([am_maintainer_other], [disable])],
+       [disable], [m4_define([am_maintainer_other], [enable])],
+       [m4_define([am_maintainer_other], [enable])
+        m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
+AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
+  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
+  AC_ARG_ENABLE([maintainer-mode],
+[  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
 			  (and sometimes confusing) to the casual installer],
-      USE_MAINTAINER_MODE=$enableval,
-      USE_MAINTAINER_MODE=no)
+      [USE_MAINTAINER_MODE=$enableval],
+      [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
   AC_MSG_RESULT([$USE_MAINTAINER_MODE])
-  AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
   MAINT=$MAINTAINER_MODE_TRUE
-  AC_SUBST(MAINT)dnl
+  AC_SUBST([MAINT])dnl
 ]
 )
 
@@ -9565,13 +9682,13 @@ AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2009  Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
+# serial 4
 
 # AM_MAKE_INCLUDE()
 # -----------------
@@ -9580,7 +9697,7 @@ AC_DEFUN([AM_MAKE_INCLUDE],
 [am_make=${MAKE-make}
 cat > confinc << 'END'
 am__doit:
-	@echo done
+	@echo this is the am__doit target
 .PHONY: am__doit
 END
 # If we don't find an include directive, just comment out the code.
@@ -9590,24 +9707,24 @@ am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
-   am__include=include
-   am__quote=
-   _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+  am__include=include
+  am__quote=
+  _am_result=GNU
+  ;;
+esac
 # Now try BSD make style include.
 if test "$am__include" = "#"; then
    echo '.include "confinc"' > confmf
-   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
-      am__include=.include
-      am__quote="\""
-      _am_result=BSD
-   fi
+   case `$am_make -s -f confmf 2> /dev/null` in #(
+   *the\ am__doit\ target*)
+     am__include=.include
+     am__quote="\""
+     _am_result=BSD
+     ;;
+   esac
 fi
 AC_SUBST([am__include])
 AC_SUBST([am__quote])
@@ -9617,14 +9734,14 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
+# serial 6
 
 # AM_MISSING_PROG(NAME, PROGRAM)
 # ------------------------------
@@ -9641,7 +9758,14 @@ AC_SUBST($1)])
 AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\	*)
+    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+  *)
+    MISSING="\${SHELL} $am_aux_dir/missing" ;;
+  esac
+fi
 # Use eval to expand $SHELL
 if eval "$MISSING --run true"; then
   am_missing_run="$MISSING --run "
@@ -9679,13 +9803,13 @@ esac
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
+# serial 4
 
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
@@ -9702,7 +9826,7 @@ AC_DEFUN([_AM_SET_OPTION],
 # ----------------------------------
 # OPTIONS is a space-separated list of Automake options.
 AC_DEFUN([_AM_SET_OPTIONS],
-[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
 
 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
 # -------------------------------------------
@@ -9729,14 +9853,14 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
 # Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 4
+# serial 5
 
 # AM_SANITY_CHECK
 # ---------------
@@ -9745,16 +9869,29 @@ AC_DEFUN([AM_SANITY_CHECK],
 # Just in case
 sleep 1
 echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name.  Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+  *[[\\\"\#\$\&\'\`$am_lf]]*)
+    AC_MSG_ERROR([unsafe absolute working directory name]);;
+esac
+case $srcdir in
+  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
+    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+esac
+
 # Do `set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
    if test "$[*]" = "X"; then
       # -L didn't work.
-      set X `ls -t $srcdir/configure conftest.file`
+      set X `ls -t "$srcdir/configure" conftest.file`
    fi
    rm -f conftest.file
    if test "$[*]" != "X $srcdir/configure conftest.file" \
@@ -9807,18 +9944,25 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006  Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 2
+
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
 # This macro is traced by Automake.
 AC_DEFUN([_AM_SUBST_NOTMAKE])
 
+# AM_SUBST_NOTMAKE(VARIABLE)
+# ---------------------------
+# Public sister of _AM_SUBST_NOTMAKE.
+AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
+
 # Check how to create a tarball.                            -*- Autoconf -*-
 
 # Copyright (C) 2004, 2005  Free Software Foundation, Inc.
diff --git a/autogen.sh b/autogen.sh
index 4c84436..78cf410 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -90,7 +90,7 @@ fi
 
 { cat <<EOF
 #!/usr/bin/env bash
-./autogen.sh $@
+./autogen.sh $@ \$@
 EOF
 } > reautogen.sh
 chmod +x reautogen.sh
diff --git a/build/Makefile.in b/build/Makefile.in
index bda88c4..f9f6e9d 100644
--- a/build/Makefile.in
+++ b/build/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -77,8 +79,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(bansheedir)"
-bansheeSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(banshee_SCRIPTS)
 SOURCES =
 DIST_SOURCES =
@@ -91,10 +114,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -212,29 +263,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -269,6 +301,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -310,9 +343,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,14 +460,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  build/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  build/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign build/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -449,25 +485,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-bansheeSCRIPTS: $(banshee_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(bansheedir)" || $(MKDIR_P) "$(DESTDIR)$(bansheedir)"
-	@list='$(banshee_SCRIPTS)'; for p in $$list; do \
+	@list='$(banshee_SCRIPTS)'; test -n "$(bansheedir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(bansheeSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bansheedir)/$$f'"; \
-	    $(bansheeSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bansheedir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bansheedir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bansheedir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-bansheeSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(banshee_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(bansheedir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(bansheedir)/$$f"; \
-	done
+	@list='$(banshee_SCRIPTS)'; test -n "$(bansheedir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bansheedir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bansheedir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -482,7 +534,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -499,7 +551,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -507,7 +559,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -533,16 +585,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -550,14 +602,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -569,7 +621,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -578,29 +630,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -621,29 +678,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -677,6 +749,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -697,6 +770,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -705,18 +780,28 @@ install-data-am: install-bansheeSCRIPTS
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -737,8 +822,8 @@ ps-am:
 
 uninstall-am: uninstall-bansheeSCRIPTS
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -774,6 +859,7 @@ $(ADDIN_XML_STRING_EXTRACTOR_ASSEMBLY): AddinXmlStringExtractor.cs
 
 $(GOBJECT_INTPTR_CTOR_VERIFIER_ASSEMBLY): GObjectIntPtrCtorVerifier.cs
 	$(MCS) $(GLIBSHARP_LIBS) -out:$@ $<
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/build/build.environment.mk b/build/build.environment.mk
index 11a83ad..dfd6e7b 100644
--- a/build/build.environment.mk
+++ b/build/build.environment.mk
@@ -31,12 +31,8 @@ LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -89,7 +85,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
 
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 
diff --git a/build/m4/Makefile.in b/build/m4/Makefile.in
index 922e484..cf6c4ca 100644
--- a/build/m4/Makefile.in
+++ b/build/m4/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -195,29 +198,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -252,6 +236,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -293,9 +278,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -387,14 +375,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  build/m4/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  build/m4/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/m4/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign build/m4/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -412,6 +400,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -441,13 +430,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -475,6 +468,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -494,6 +488,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -502,18 +498,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -547,6 +553,7 @@ uninstall-am:
 	maintainer-clean-generic mostlyclean mostlyclean-generic \
 	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/build/pkg-config/Makefile.am b/build/pkg-config/Makefile.am
index 4929926..a302874 100644
--- a/build/pkg-config/Makefile.am
+++ b/build/pkg-config/Makefile.am
@@ -2,7 +2,7 @@ pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_in_files = $(wildcard banshee-1-*.pc.in)
 pkgconfig_DATA = $(pkgconfig_in_files:.pc.in=.pc)
 
-%.pc: %.pc.in
+%.pc: %.pc.in $(top_builddir)/configure.ac
 	sed "s,\@VERSION\@,$(VERSION),g; s,\@prefix\@,$(prefix),g; s,\@libdir\@,$(libdir),g" < $< > $@
 
 EXTRA_DIST = $(pkgconfig_in_files)
diff --git a/build/pkg-config/Makefile.in b/build/pkg-config/Makefile.in
index da6cd5a..05c0dbd 100644
--- a/build/pkg-config/Makefile.in
+++ b/build/pkg-config/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -83,9 +86,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
-pkgconfigDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(pkgconfig_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -205,29 +222,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -262,6 +260,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -303,9 +302,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -396,14 +398,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  build/pkg-config/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  build/pkg-config/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/pkg-config/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign build/pkg-config/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -421,6 +423,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -430,20 +433,23 @@ clean-libtool:
 install-pkgconfigDATA: $(pkgconfig_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
-	@list='$(pkgconfig_DATA)'; for p in $$list; do \
+	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
-	  $(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
 	done
 
 uninstall-pkgconfigDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(pkgconfig_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
-	done
+	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -467,13 +473,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -505,6 +515,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -524,6 +535,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -532,18 +545,28 @@ install-data-am: install-pkgconfigDATA
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -579,8 +602,9 @@ uninstall-am: uninstall-pkgconfigDATA
 	uninstall uninstall-am uninstall-pkgconfigDATA
 
 
-%.pc: %.pc.in
+%.pc: %.pc.in $(top_builddir)/configure.ac
 	sed "s,\@VERSION\@,$(VERSION),g; s,\@prefix\@,$(prefix),g; s,\@libdir\@,$(libdir),g" < $< > $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/build/pkg-config/banshee-1-hyena-data-sqlite.pc.in b/build/pkg-config/banshee-1-hyena-data-sqlite.pc.in
index 8138b7b..b6b2e7b 100644
--- a/build/pkg-config/banshee-1-hyena-data-sqlite.pc.in
+++ b/build/pkg-config/banshee-1-hyena-data-sqlite.pc.in
@@ -7,5 +7,5 @@ Name: Banshee Hyena
 Description: Hyena sqlite libraries for the Banshee Media Framework
 Version: @VERSION@
 Requires: banshee-1-hyena
-Libs: -r:System.Data -r:${bansheedir}/Mono.Data.Sqlite -r:${bansheedir}/Hyena.Data.Sqlite.dll
+Libs: -r:${bansheedir}/Hyena.Data.Sqlite.dll
 
diff --git a/config.guess b/config.guess
index e6b5d5b..c2246a4 100755
--- a/config.guess
+++ b/config.guess
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 #   Free Software Foundation, Inc.
 
-timestamp='2008-01-08'
+timestamp='2009-12-30'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -27,16 +27,16 @@ timestamp='2008-01-08'
 # the same distribution terms that you use for the rest of that program.
 
 
-# Originally written by Per Bothner <per at bothner.com>.
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
+# Originally written by Per Bothner.  Please send patches (context
+# diff format) to <config-patches at gnu.org> and include a ChangeLog
+# entry.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # exits with 0.  Otherwise, it exits with 1.
 #
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -56,8 +56,9 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
+Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -139,16 +140,6 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-case "${UNAME_MACHINE}" in
-    i?86)
-	test -z "$VENDOR" && VENDOR=pc
-	;;
-    *)
-	test -z "$VENDOR" && VENDOR=unknown
-	;;
-esac
-test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
-
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -180,7 +171,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
 		eval $set_cc_for_build
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep __ELF__ >/dev/null
+			| grep -q __ELF__
 		then
 		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
 		    # Return netbsd for either.  FIX?
@@ -334,14 +325,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	case `/usr/bin/uname -p` in
 	    sparc) echo sparc-icl-nx7; exit ;;
 	esac ;;
+    s390x:SunOS:*:*)
+	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
     sun4H:SunOS:5.*:*)
 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
+    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+	echo i386-pc-auroraux${UNAME_RELEASE}
+	exit ;;
     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	eval $set_cc_for_build
+	SUN_ARCH="i386"
+	# If there is a compiler, see if it is configured for 64-bit objects.
+	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+	# This test works for both compilers.
+	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		grep IS_64BIT_ARCH >/dev/null
+	    then
+		SUN_ARCH="x86_64"
+	    fi
+	fi
+	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
@@ -650,7 +660,7 @@ EOF
 	    # => hppa64-hp-hpux11.23
 
 	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep __LP64__ >/dev/null
+		grep -q __LP64__
 	    then
 		HP_ARCH="hppa2.0w"
 	    else
@@ -801,12 +811,12 @@ EOF
     i*:PW*:*)
 	echo ${UNAME_MACHINE}-pc-pw32
 	exit ;;
-    *:Interix*:[3456]*)
+    *:Interix*:*)
     	case ${UNAME_MACHINE} in
 	    x86)
 		echo i586-pc-interix${UNAME_RELEASE}
 		exit ;;
-	    EM64T | authenticamd)
+	    authenticamd | genuineintel | EM64T)
 		echo x86_64-unknown-interix${UNAME_RELEASE}
 		exit ;;
 	    IA64)
@@ -816,6 +826,9 @@ EOF
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
 	exit ;;
+    8664:Windows_NT:*)
+	echo x86_64-pc-mks
+	exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
 	# How do we know it's Interix rather than the generic POSIX subsystem?
 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -845,18 +858,32 @@ EOF
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	  EV5)   UNAME_MACHINE=alphaev5 ;;
+	  EV56)  UNAME_MACHINE=alphaev56 ;;
+	  PCA56) UNAME_MACHINE=alphapca56 ;;
+	  PCA57) UNAME_MACHINE=alphapca56 ;;
+	  EV6)   UNAME_MACHINE=alphaev6 ;;
+	  EV67)  UNAME_MACHINE=alphaev67 ;;
+	  EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+	objdump --private-headers /bin/sh | grep -q ld.so.1
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	exit ;;
     arm*:Linux:*:*)
 	eval $set_cc_for_build
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	    echo ${UNAME_MACHINE}-unknown-linux-gnu
 	else
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi
+	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
 	fi
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     cris:Linux:*:*)
 	echo cris-axis-linux-gnu
@@ -865,181 +892,91 @@ EOF
 	echo crisv32-axis-linux-gnu
 	exit ;;
     frv:Linux:*:*)
-    	echo frv-${VENDOR}-linux-gnu
+    	echo frv-unknown-linux-gnu
+	exit ;;
+    i*86:Linux:*:*)
+	LIBC=gnu
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#ifdef __dietlibc__
+	LIBC=dietlibc
+	#endif
+EOF
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
-    mips:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips
-	#undef mipsel
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mipsel
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; }
-	;;
-    mips64:Linux:*:*)
+    mips:Linux:*:* | mips64:Linux:*:*)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
 	#undef CPU
-	#undef mips64
-	#undef mips64el
+	#undef ${UNAME_MACHINE}
+	#undef ${UNAME_MACHINE}el
 	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mips64el
+	CPU=${UNAME_MACHINE}el
 	#else
 	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips64
+	CPU=${UNAME_MACHINE}
 	#else
 	CPU=
 	#endif
 	#endif
 EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; }
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
     or32:Linux:*:*)
-	echo or32-${VENDOR}-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-${VENDOR}-linux-gnu
+	echo or32-unknown-linux-gnu
 	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-${VENDOR}-linux-gnu
+    padre:Linux:*:*)
+	echo sparc-unknown-linux-gnu
 	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC}
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;;
-	  PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;;
-	  *)    echo hppa-${VENDOR}-linux-gnu ;;
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
 	esac
 	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-${VENDOR}-linux-gnu
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit ;;
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
 	echo ${UNAME_MACHINE}-ibm-linux
 	exit ;;
     sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     vax:Linux:*:*)
 	echo ${UNAME_MACHINE}-dec-linux-gnu
 	exit ;;
     x86_64:Linux:*:*)
-	echo x86_64-${VENDOR}-linux-gnu
+	echo x86_64-unknown-linux-gnu
 	exit ;;
     xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
-    i*86:Linux:*:*)
-	# The BFD linker knows what the default object file format is, so
-	# first see if it will tell us. cd to the root directory to prevent
-	# problems with other programs or directories called `ld' in the path.
-	# Set LC_ALL=C to ensure ld outputs messages in English.
-	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-			 | sed -ne '/supported targets:/!d
-				    s/[ 	][ 	]*/ /g
-				    s/.*supported targets: *//
-				    s/ .*//
-				    p'`
-        case "$ld_supported_targets" in
-	  elf32-i386)
-		TENTATIVE="${UNAME_MACHINE}-${VENDOR}-linux-gnu"
-		;;
-	  a.out-i386-linux)
-		echo "${UNAME_MACHINE}-${VENDOR}-linux-gnuaout"
-		exit ;;
-	  coff-i386)
-		echo "${UNAME_MACHINE}-${VENDOR}-linux-gnucoff"
-		exit ;;
-	  "")
-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
-		# one that does not give us useful --help.
-		echo "${UNAME_MACHINE}-${VENDOR}-linux-gnuoldld"
-		exit ;;
-	esac
-	# Determine whether the default compiler is a.out or elf
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <features.h>
-	#ifdef __ELF__
-	# ifdef __GLIBC__
-	#  if __GLIBC__ >= 2
-	LIBC=gnu
-	#  else
-	LIBC=gnulibc1
-	#  endif
-	# else
-	LIBC=gnulibc1
-	# endif
-	#else
-	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-	LIBC=gnu
-	#else
-	LIBC=gnuaout
-	#endif
-	#endif
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^LIBC/{
-		s: ::g
-		p
-	    }'`"
-	test x"${LIBC}" != x && {
-		echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}"
-		exit
-	}
-	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
 	# earlier versions are messed up and put the nodename in both
@@ -1068,7 +1005,7 @@ EOF
     i*86:syllable:*:*)
 	echo ${UNAME_MACHINE}-pc-syllable
 	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
 	echo i386-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     i*86:*DOS:*:*)
@@ -1112,8 +1049,11 @@ EOF
     pc:*:*:*)
 	# Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i386.
-	echo i386-pc-msdosdjgpp
+        # the processor, so we play safe by assuming i586.
+	# Note: whatever this is, it MUST be the same as what config.sub
+	# prints for the "djgpp" host, or else GDB configury will decide that
+	# this is a cross-build.
+	echo i586-pc-msdosdjgpp
         exit ;;
     Intel:Mach:3*:*)
 	echo i386-pc-mach3
@@ -1151,6 +1091,16 @@ EOF
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
           && { echo i486-ncr-sysv4; exit; } ;;
+    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+	OS_REL='.3'
+	test -r /etc/.relid \
+	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
 	echo m68k-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
@@ -1163,7 +1113,7 @@ EOF
     rs6000:LynxOS:2.*:*)
 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
 	echo powerpc-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     SM[BE]S:UNIX_SV:*:*)
@@ -1226,6 +1176,9 @@ EOF
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
 	echo i586-pc-beos
 	exit ;;
+    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
+	echo i586-pc-haiku
+	exit ;;
     SX-4:SUPER-UX:*:*)
 	echo sx4-nec-superux${UNAME_RELEASE}
 	exit ;;
@@ -1253,6 +1206,16 @@ EOF
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
 	case $UNAME_PROCESSOR in
+	    i386)
+		eval $set_cc_for_build
+		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		      grep IS_64BIT_ARCH >/dev/null
+		  then
+		      UNAME_PROCESSOR="x86_64"
+		  fi
+		fi ;;
 	    unknown) UNAME_PROCESSOR=powerpc ;;
 	esac
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@@ -1334,6 +1297,9 @@ EOF
     i*86:rdos:*:*)
 	echo ${UNAME_MACHINE}-pc-rdos
 	exit ;;
+    i*86:AROS:*:*)
+	echo ${UNAME_MACHINE}-pc-aros
+	exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1494,9 +1460,9 @@ This script, last modified $timestamp, has failed to recognize
 the operating system you are using. It is advised that you
 download the most up to date version of the config scripts from
 
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 and
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
 
 If the version you run ($0) is already up to date, please
 send the following data and any information you think might be
diff --git a/config.h.in b/config.h.in
index a6ce620..7ae1bf7 100644
--- a/config.h.in
+++ b/config.h.in
@@ -79,6 +79,9 @@
 /* Define to the one symbol short name of this package. */
 #undef PACKAGE_TARNAME
 
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION
 
diff --git a/config.sub b/config.sub
index 6759825..c2d1257 100755
--- a/config.sub
+++ b/config.sub
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 #   Free Software Foundation, Inc.
 
-timestamp='2008-01-16'
+timestamp='2010-01-22'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -32,13 +32,16 @@ timestamp='2008-01-16'
 
 
 # Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
+# diff and a properly formatted GNU ChangeLog entry.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
 # Otherwise, we print the canonical config type on stdout and succeed.
 
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
 # that are meaningful with *any* GNU software.
@@ -72,8 +75,9 @@ Report bugs and patches to <config-patches at gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
+Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -122,6 +126,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+  kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
@@ -148,10 +153,13 @@ case $os in
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray)
+	-apple | -axis | -knuth | -cray | -microblaze)
 		os=
 		basic_machine=$1
 		;;
+        -bluegene*)
+	        os=-cnk
+		;;
 	-sim | -cisco | -oki | -wec | -winbond)
 		os=
 		basic_machine=$1
@@ -249,13 +257,16 @@ case $basic_machine in
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
+	| lm32 \
 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep \
+	| maxq | mb | microblaze | mcore | mep | metag \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
-	| mips64vr | mips64vrel \
+	| mips64octeon | mips64octeonel \
 	| mips64orion | mips64orionel \
+	| mips64r5900 | mips64r5900el \
+	| mips64vr | mips64vrel \
 	| mips64vr4100 | mips64vr4100el \
 	| mips64vr4300 | mips64vr4300el \
 	| mips64vr5000 | mips64vr5000el \
@@ -268,6 +279,7 @@ case $basic_machine in
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
+	| moxie \
 	| mt \
 	| msp430 \
 	| nios | nios2 \
@@ -276,20 +288,22 @@ case $basic_machine in
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
 	| pyramid \
+	| rx \
 	| score \
-	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
 	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
 	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
 	| spu | strongarm \
 	| tahoe | thumb | tic4x | tic80 | tron \
+	| ubicom32 \
 	| v850 | v850e \
 	| we32k \
 	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k)
+	| z8k | z80)
 		basic_machine=$basic_machine-unknown
 		;;
-	m6811 | m68hc11 | m6812 | m68hc12)
+	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
 		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
 		os=-none
@@ -329,14 +343,17 @@ case $basic_machine in
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
+	| lm32-* \
 	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
-	| mips64vr-* | mips64vrel-* \
+	| mips64octeon-* | mips64octeonel-* \
 	| mips64orion-* | mips64orionel-* \
+	| mips64r5900-* | mips64r5900el-* \
+	| mips64vr-* | mips64vrel-* \
 	| mips64vr4100-* | mips64vr4100el-* \
 	| mips64vr4300-* | mips64vr4300el-* \
 	| mips64vr5000-* | mips64vr5000el-* \
@@ -357,21 +374,23 @@ case $basic_machine in
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
 	| pyramid-* \
-	| romp-* | rs6000-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+	| romp-* | rs6000-* | rx-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
 	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
 	| sparclite-* \
 	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
 	| tahoe-* | thumb-* \
 	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+	| tile-* | tilegx-* \
 	| tron-* \
+	| ubicom32-* \
 	| v850-* | v850e-* | vax-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
 	| xstormy16-* | xtensa*-* \
 	| ymp-* \
-	| z8k-*)
+	| z8k-* | z80-*)
 		;;
 	# Recognize the basic CPU types without company name, with glob match.
 	xtensa*)
@@ -439,6 +458,10 @@ case $basic_machine in
 		basic_machine=m68k-apollo
 		os=-bsd
 		;;
+	aros)
+		basic_machine=i386-pc
+		os=-aros
+		;;
 	aux)
 		basic_machine=m68k-apple
 		os=-aux
@@ -455,10 +478,18 @@ case $basic_machine in
 		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
 		os=-linux
 		;;
+	bluegene*)
+		basic_machine=powerpc-ibm
+		os=-cnk
+		;;
 	c90)
 		basic_machine=c90-cray
 		os=-unicos
 		;;
+        cegcc)
+		basic_machine=arm-unknown
+		os=-cegcc
+		;;
 	convex-c1)
 		basic_machine=c1-convex
 		os=-bsd
@@ -526,6 +557,10 @@ case $basic_machine in
 		basic_machine=m88k-motorola
 		os=-sysv3
 		;;
+	dicos)
+		basic_machine=i686-pc
+		os=-dicos
+		;;
 	djgpp)
 		basic_machine=i586-pc
 		os=-msdosdjgpp
@@ -699,6 +734,9 @@ case $basic_machine in
 		basic_machine=ns32k-utek
 		os=-sysv
 		;;
+        microblaze)
+		basic_machine=microblaze-xilinx
+		;;
 	mingw32)
 		basic_machine=i386-pc
 		os=-mingw32
@@ -1049,6 +1087,11 @@ case $basic_machine in
 		basic_machine=tic6x-unknown
 		os=-coff
 		;;
+        # This must be matched before tile*.
+        tilegx*)
+		basic_machine=tilegx-unknown
+		os=-linux-gnu
+		;;
 	tile*)
 		basic_machine=tile-unknown
 		os=-linux-gnu
@@ -1128,6 +1171,10 @@ case $basic_machine in
 		basic_machine=z8k-unknown
 		os=-sim
 		;;
+	z80-*-coff)
+		basic_machine=z80-unknown
+		os=-sim
+		;;
 	none)
 		basic_machine=none-none
 		os=-none
@@ -1166,7 +1213,7 @@ case $basic_machine in
 	we32k)
 		basic_machine=we32k-att
 		;;
-	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
 	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
@@ -1216,6 +1263,9 @@ case $os in
         # First match some system type aliases
         # that might get confused with valid system types.
 	# -solaris* is a basic system type, with this one exception.
+        -auroraux)
+	        os=-auroraux
+		;;
 	-solaris1 | -solaris1.*)
 		os=`echo $os | sed -e 's|solaris1|sunos4|'`
 		;;
@@ -1236,10 +1286,11 @@ case $os in
 	# Each alternative MUST END IN A *, to match a version number.
 	# -sysv* is not here because it comes later, after sysvr4.
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+	      | -sym* | -kopensolaris* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* \
+	      | -aos* | -aros* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
@@ -1248,7 +1299,7 @@ case $os in
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* \
+	      | -chorusos* | -chorusrdb* | -cegcc* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
 	      | -uxpv* | -beos* | -mpeix* | -udk* \
@@ -1258,7 +1309,7 @@ case $os in
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1388,6 +1439,11 @@ case $os in
 	-zvmoe)
 		os=-zvmoe
 		;;
+	-dicos*)
+		os=-dicos
+		;;
+        -nacl*)
+	        ;;
 	-none)
 		;;
 	*)
@@ -1585,7 +1641,7 @@ case $basic_machine in
 			-sunos*)
 				vendor=sun
 				;;
-			-aix*)
+			-cnk*|-aix*)
 				vendor=ibm
 				;;
 			-beos*)
diff --git a/configure b/configure
index 9e910fd..25851b4 100755
--- a/configure
+++ b/configure
@@ -1,20 +1,24 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.63 for banshee-1 1.9.0.
+# Generated by GNU Autoconf 2.67 for banshee-1 1.9.0.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=banshee>.
 #
+#
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
+# Foundation, Inc.
+#
+#
 # This configure script is free software; the Free Software Foundation
 # gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -22,23 +26,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
 else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
+  case `(set -o) 2>/dev/null` in #(
+  *posix*) :
+    set -o posix ;; #(
+  *) :
+     ;;
 esac
-
 fi
 
 
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
 as_nl='
 '
 export as_nl
@@ -46,7 +42,13 @@ export as_nl
 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='print -r --'
+  as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
   as_echo='printf %s\n'
   as_echo_n='printf %s'
 else
@@ -57,7 +59,7 @@ else
     as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
     as_echo_n_body='eval
       arg=$1;
-      case $arg in
+      case $arg in #(
       *"$as_nl"*)
 	expr "X$arg" : "X\\(.*\\)$as_nl";
 	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -80,13 +82,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
   }
 fi
 
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
 
 # IFS
 # We need space, tab and new line, in precisely that order.  Quoting is
@@ -96,15 +91,15 @@ fi
 IFS=" ""	$as_nl"
 
 # Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
+case $0 in #((
   *[\\/]* ) as_myself=$0 ;;
   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  done
 IFS=$as_save_IFS
 
      ;;
@@ -116,12 +111,16 @@ if test "x$as_myself" = x; then
 fi
 if test ! -f "$as_myself"; then
   $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
+  exit 1
 fi
 
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there.  '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 done
 PS1='$ '
 PS2='> '
@@ -133,330 +132,301 @@ export LC_ALL
 LANGUAGE=C
 export LANGUAGE
 
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
 # CDPATH.
-$as_unset CDPATH
-
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 if test "x$CONFIG_SHELL" = x; then
-  if (eval ":") 2>/dev/null; then
-  as_have_required=yes
+  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  emulate sh
+  NULLCMD=:
+  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '\${1+\"\$@\"}'='\"\$@\"'
+  setopt NO_GLOB_SUBST
 else
-  as_have_required=no
+  case \`(set -o) 2>/dev/null\` in #(
+  *posix*) :
+    set -o posix ;; #(
+  *) :
+     ;;
+esac
 fi
-
-  if test $as_have_required = yes &&	 (eval ":
-(as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
+"
+  as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
 
 exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+  exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+  if (eval "$as_required") 2>/dev/null; then :
+  as_have_required=yes
 else
-  exitcode=1
-  echo positional parameters were not saved.
+  as_have_required=no
 fi
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
 
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=\$LINENO
-  as_lineno_2=\$LINENO
-  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
-  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
-  :
 else
-  as_candidate_shells=
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  case $as_dir in
+  as_found=:
+  case $as_dir in #(
 	 /*)
 	   for as_base in sh bash ksh sh5; do
-	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+	     # Try only shells that exist, to save several forks.
+	     as_shell=$as_dir/$as_base
+	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  CONFIG_SHELL=$as_shell as_have_required=yes
+		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  break 2
+fi
+fi
 	   done;;
        esac
+  as_found=false
 done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
 IFS=$as_save_IFS
 
 
-      for as_shell in $as_candidate_shells $SHELL; do
-	 # Try only shells that exist, to save several forks.
-	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		{ ("$as_shell") 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-_ASEOF
-}; then
-  CONFIG_SHELL=$as_shell
-	       as_have_required=yes
-	       if { "$as_shell" 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-(as_func_return () {
-  (exit $1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = "$1" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
-  break
-fi
-
-fi
-
-      done
-
-      if test "x$CONFIG_SHELL" != x; then
-  for as_var in BASH_ENV ENV
-	do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-	done
+      if test "x$CONFIG_SHELL" != x; then :
+  # We cannot yet assume a decent shell, so we have to provide a
+	# neutralization value for shells without unset; and this also
+	# works around shells that cannot unset nonexistent variables.
+	BASH_ENV=/dev/null
+	ENV=/dev/null
+	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
 	export CONFIG_SHELL
 	exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
 fi
 
-
-    if test $as_have_required = no; then
-  echo This script requires a shell more modern than all the
-      echo shells that I found on your system.  Please install a
-      echo modern shell, or manually run the script under such a
-      echo shell if you do have one.
-      { (exit 1); exit 1; }
+    if test x$as_have_required = xno; then :
+  $as_echo "$0: This script requires a shell more modern than all"
+  $as_echo "$0: the shells that I found on your system."
+  if test x${ZSH_VERSION+set} = xset ; then
+    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+  else
+    $as_echo "$0: Please tell bug-autoconf at gnu.org and
+$0: http://bugzilla.gnome.org/enter_bug.cgi?product=banshee
+$0: about your system, including any error possibly output
+$0: before this message. Then install a modern shell, or
+$0: manually run the script under such a shell if you do
+$0: have one."
+  fi
+  exit 1
 fi
-
-
 fi
-
 fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
 
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+  { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
 
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
 
-(eval "as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
 
-exitcode=0
-if as_func_success; then
-  :
+  case $as_dir in #(
+  -*) as_dir=./$as_dir;;
+  esac
+  test -d "$as_dir" || eval $as_mkdir_p || {
+    as_dirs=
+    while :; do
+      case $as_dir in #(
+      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *) as_qdir=$as_dir;;
+      esac
+      as_dirs="'$as_qdir' $as_dirs"
+      as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$as_dir" : 'X\(//\)[^/]' \| \
+	 X"$as_dir" : 'X\(//\)$' \| \
+	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)[^/].*/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+      test -d "$as_dir" && break
+    done
+    test -z "$as_dirs" || eval "mkdir $as_dirs"
+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+  eval 'as_fn_append ()
+  {
+    eval $1+=\$2
+  }'
 else
-  exitcode=1
-  echo as_func_success failed.
-fi
+  as_fn_append ()
+  {
+    eval $1=\$$1\$2
+  }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+  eval 'as_fn_arith ()
+  {
+    as_val=$(( $* ))
+  }'
+else
+  as_fn_arith ()
+  {
+    as_val=`expr "$@" || test $? -eq 1`
+  }
+fi # as_fn_arith
 
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
 
-if as_func_ret_success; then
-  :
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+  as_status=$1; test $as_status -eq 0 && as_status=1
+  if test "$4"; then
+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+  fi
+  $as_echo "$as_me: error: $2" >&2
+  as_fn_exit $as_status
+} # as_fn_error
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
 else
-  exitcode=1
-  echo as_func_ret_success failed.
+  as_expr=false
 fi
 
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
 fi
 
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
 else
-  exitcode=1
-  echo positional parameters were not saved.
+  as_dirname=false
 fi
 
-test \$exitcode = 0") || {
-  echo No shell found that supports shell functions.
-  echo Please tell bug-autoconf at gnu.org about your system,
-  echo including any error possibly output before this message.
-  echo This can help us improve future autoconf versions.
-  echo Configuration will now proceed without shell functions.
-}
-
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
 
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
 
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
 
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
+  as_lineno_1=$LINENO as_lineno_1a=$LINENO
+  as_lineno_2=$LINENO as_lineno_2a=$LINENO
+  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
   sed -n '
     p
     /[$]LINENO/=
@@ -473,8 +443,7 @@ test \$exitcode = 0") || {
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
+    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
@@ -484,29 +453,18 @@ test \$exitcode = 0") || {
   exit
 }
 
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
 ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
 -n*)
-  case `echo 'x\c'` in
+  case `echo 'xy\c'` in
   *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
+  xy)  ECHO_C='\c';;
+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
+       ECHO_T='	';;
   esac;;
 *)
   ECHO_N='-n';;
 esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
 
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
@@ -536,7 +494,7 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
 
 if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
+  as_mkdir_p='mkdir -p "$as_dir"'
 else
   test -d ./-p && rmdir ./-p
   as_mkdir_p=false
@@ -555,10 +513,10 @@ else
       if test -d "$1"; then
 	test -d "$1/.";
       else
-	case $1 in
+	case $1 in #(
 	-*)set "./$1";;
 	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
 	???[sx]*):;;*)false;;esac;fi
     '\'' sh
   '
@@ -573,7 +531,6 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 
 
 
-
 # Check that we are running under the correct shell.
 SHELL=${CONFIG_SHELL-/bin/sh}
 
@@ -722,10 +679,11 @@ fi
 
 
 
-exec 7<&0 </dev/null 6>&1
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
 
 # Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
 # so uname gets run too.
 ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
 
@@ -740,7 +698,6 @@ cross_compiling=no
 subdirs=
 MFLAGS=
 MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
 
 # Identity of this package.
 PACKAGE_NAME='banshee-1'
@@ -748,6 +705,7 @@ PACKAGE_TARNAME='banshee-1'
 PACKAGE_VERSION='1.9.0'
 PACKAGE_STRING='banshee-1 1.9.0'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=banshee'
+PACKAGE_URL=''
 
 # Factoring default headers for most tests.
 ac_includes_default="\
@@ -785,7 +743,9 @@ ac_includes_default="\
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='LTLIBOBJS
+ac_subst_vars='am__EXEEXT_FALSE
+am__EXEEXT_TRUE
+LTLIBOBJS
 LIBOBJS
 Q
 V
@@ -809,6 +769,7 @@ ENABLE_RELEASE_TRUE
 ENABLE_PODCAST_FALSE
 ENABLE_PODCAST_TRUE
 CONFIG_STATUS_DEPENDENCIES
+MKINSTALLDIRS
 POSUB
 POFILES
 PO_IN_DATADIR_FALSE
@@ -1014,6 +975,8 @@ GOBJECT_QUERY
 GLIB_GENMARSHAL
 GLIB_LIBS
 GLIB_CFLAGS
+PKG_CONFIG_LIBDIR
+PKG_CONFIG_PATH
 PKG_CONFIG
 expanded_datadir
 expanded_bindir
@@ -1153,6 +1116,7 @@ bindir
 program_transform_name
 prefix
 exec_prefix
+PACKAGE_URL
 PACKAGE_BUGREPORT
 PACKAGE_STRING
 PACKAGE_VERSION
@@ -1218,6 +1182,8 @@ LIBS
 CPPFLAGS
 CPP
 PKG_CONFIG
+PKG_CONFIG_PATH
+PKG_CONFIG_LIBDIR
 GDK_X11_CFLAGS
 GDK_X11_LIBS
 GDK_QUARTZ_CFLAGS
@@ -1369,8 +1335,9 @@ do
   fi
 
   case $ac_option in
-  *=*)	ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *)	ac_optarg=yes ;;
+  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+  *=)   ac_optarg= ;;
+  *)    ac_optarg=yes ;;
   esac
 
   # Accept the important Cygnus configure options, so we can diagnose typos.
@@ -1415,8 +1382,7 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "invalid feature name: $ac_useropt"
     ac_useropt_orig=$ac_useropt
     ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
@@ -1442,8 +1408,7 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "invalid feature name: $ac_useropt"
     ac_useropt_orig=$ac_useropt
     ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
@@ -1647,8 +1612,7 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "invalid package name: $ac_useropt"
     ac_useropt_orig=$ac_useropt
     ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
@@ -1664,8 +1628,7 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "invalid package name: $ac_useropt"
     ac_useropt_orig=$ac_useropt
     ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
@@ -1695,17 +1658,17 @@ do
   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
     x_libraries=$ac_optarg ;;
 
-  -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; }
+  -*) as_fn_error $? "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information"
     ;;
 
   *=*)
     ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
     # Reject names that are not valid shell variable names.
-    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-      { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-   { (exit 1); exit 1; }; }
+    case $ac_envvar in #(
+      '' | [0-9]* | *[!_$as_cr_alnum]* )
+      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
+    esac
     eval $ac_envvar=\$ac_optarg
     export $ac_envvar ;;
 
@@ -1722,15 +1685,13 @@ done
 
 if test -n "$ac_prev"; then
   ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  { $as_echo "$as_me: error: missing argument to $ac_option" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "missing argument to $ac_option"
 fi
 
 if test -n "$ac_unrecognized_opts"; then
   case $enable_option_checking in
     no) ;;
-    fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
-   { (exit 1); exit 1; }; } ;;
+    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
     *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
   esac
 fi
@@ -1753,8 +1714,7 @@ do
     [\\/$]* | ?:[\\/]* )  continue;;
     NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
   esac
-  { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
 done
 
 # There might be people who depend on the old broken behavior: `$host'
@@ -1768,8 +1728,8 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used." >&2
+    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
+    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1784,11 +1744,9 @@ test "$silent" = yes && exec 6>/dev/null
 ac_pwd=`pwd` && test -n "$ac_pwd" &&
 ac_ls_di=`ls -di .` &&
 ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  { $as_echo "$as_me: error: working directory cannot be determined" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "working directory cannot be determined"
 test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "pwd does not report name of working directory"
 
 
 # Find the source files, if location was not specified.
@@ -1827,13 +1785,11 @@ else
 fi
 if test ! -r "$srcdir/$ac_unique_file"; then
   test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
 fi
 ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
 ac_abs_confdir=`(
-	cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
-   { (exit 1); exit 1; }; }
+	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
 	pwd)`
 # When building in place, set srcdir=.
 if test "$ac_abs_confdir" = "$ac_pwd"; then
@@ -1873,7 +1829,7 @@ Configuration:
       --help=short        display options specific to this package
       --help=recursive    display the short help of all the included packages
   -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking...' messages
+  -q, --quiet, --silent   do not print \`checking ...' messages
       --cache-file=FILE   cache test results in FILE [disabled]
   -C, --config-cache      alias for \`--cache-file=config.cache'
   -n, --no-create         do not create output files
@@ -1956,7 +1912,7 @@ Optional Features:
   --disable-builtin-equalizer
                           Disable builtin equalizer
   --enable-gst-sharp      Enable Gst# backend
-  --enable-user-help      Enable building the user-help [default=auto]
+  --enable-user-help      Enable building the user-help [[default=auto]]
   --disable-scrollkeeper  do not make updates to the scrollkeeper database
   --disable-boo           Do not build with boo support
   --disable-docs          Do not build documentation
@@ -1964,7 +1920,7 @@ Optional Features:
   --disable-hal           Disable Hal hardware backend
   --disable-gio           Disable GIO for IO operations
   --disable-gio-hardware  Disable GIO Hardware backend
-  --enable-moonlight      Enable Moonlight-enhanced effects [default=auto]
+  --enable-moonlight      Enable Moonlight-enhanced effects [[default=auto]]
   --enable-tests          Enable NUnit tests
   --disable-gnome         Disable GNOME support
   --disable-schemas-install
@@ -1983,7 +1939,7 @@ Optional Features:
                           gst-plugins-base > 0.10.25.2)
   --disable-podcast       Disable Podcasting support
   --enable-release        Use release configuration
-  --enable-shave          use shave to make the build pretty [default=yes]
+  --enable-shave          use shave to make the build pretty [[default=yes]]
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
@@ -2009,10 +1965,14 @@ Some influential environment variables:
   LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
               nonstandard directory <lib dir>
   LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
   CPP         C preprocessor
   PKG_CONFIG  path to pkg-config utility
+  PKG_CONFIG_PATH
+              directories to add to pkg-config's search path
+  PKG_CONFIG_LIBDIR
+              path overriding pkg-config's built-in search path
   GDK_X11_CFLAGS
               C compiler flags for GDK_X11, overriding pkg-config
   GDK_X11_LIBS
@@ -2249,21 +2209,611 @@ test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
 banshee-1 configure 1.9.0
-generated by GNU Autoconf 2.63
+generated by GNU Autoconf 2.67
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
   exit
 fi
+
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  rm -f conftest.$ac_objext
+  if { { ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compile") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_retval=1
+fi
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  rm -f conftest.$ac_objext conftest$ac_exeext
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext && {
+	 test "$cross_compiling" = yes ||
+	 $as_test_x conftest$ac_exeext
+       }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_retval=1
+fi
+  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+  # interfere with the next link command; also delete a directory that is
+  # left behind by Apple's compiler.  We do this before executing the actions.
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval "test \"\${$3+set}\"" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $2 (); below.
+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+    <limits.h> exists even on freestanding compilers.  */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_func
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval "test \"\${$3+set}\"" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } > conftest.i && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+    ac_retval=1
+fi
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: program exited with status $ac_status" >&5
+       $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
+# ----------------------------------------------------
+# Tries to find if the field MEMBER exists in type AGGR, after including
+# INCLUDES, setting cache variable VAR accordingly.
+ac_fn_c_check_member ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
+$as_echo_n "checking for $2.$3... " >&6; }
+if eval "test \"\${$4+set}\"" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (sizeof ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  eval "$4=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$4
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_member
+
+# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
+# --------------------------------------------
+# Tries to find the compile-time value of EXPR in a program that includes
+# INCLUDES, setting VAR accordingly. Returns whether the value could be
+# computed
+ac_fn_c_compute_int ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if test "$cross_compiling" = yes; then
+    # Depending upon the size, compute the lo and hi bounds.
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= 0)];
+test_array [0] = 0
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=$ac_mid; break
+else
+  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
+			if test $ac_lo -le $ac_mid; then
+			  ac_lo= ac_hi=
+			  break
+			fi
+			as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) < 0)];
+test_array [0] = 0
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=-1 ac_mid=-1
+  while :; do
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= $ac_mid)];
+test_array [0] = 0
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_lo=$ac_mid; break
+else
+  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
+			if test $ac_mid -le $ac_hi; then
+			  ac_lo= ac_hi=
+			  break
+			fi
+			as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  ac_lo= ac_hi=
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=$ac_mid
+else
+  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in #((
+?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
+'') ac_retval=1 ;;
+esac
+  else
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+static long int longval () { return $2; }
+static unsigned long int ulongval () { return $2; }
+#include <stdio.h>
+#include <stdlib.h>
+int
+main ()
+{
+
+  FILE *f = fopen ("conftest.val", "w");
+  if (! f)
+    return 1;
+  if (($2) < 0)
+    {
+      long int i = longval ();
+      if (i != ($2))
+	return 1;
+      fprintf (f, "%ld", i);
+    }
+  else
+    {
+      unsigned long int i = ulongval ();
+      if (i != ($2))
+	return 1;
+      fprintf (f, "%lu", i);
+    }
+  /* Do not output a trailing newline, as this causes \r\n confusion
+     on some platforms.  */
+  return ferror (f) || fclose (f) != 0;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
+else
+  ac_retval=1
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f conftest.val
+
+  fi
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_compute_int
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if eval "test \"\${$3+set}\"" = set; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval "test \"\${$3+set}\"" = set; then :
+  $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+  # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_header_compiler=yes
+else
+  ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+  ac_header_preproc=yes
+else
+  ac_header_preproc=no
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+  yes:no: )
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+    ;;
+  no:yes:* )
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( $as_echo "## ---------------------------------------------------------------------- ##
+## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=banshee ##
+## ---------------------------------------------------------------------- ##"
+     ) | sed "s/^/$as_me: WARNING:     /" >&2
+    ;;
+esac
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval "test \"\${$3+set}\"" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_mongrel
 cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
 It was created by banshee-1 $as_me 1.9.0, which was
-generated by GNU Autoconf 2.63.  Invocation command line was
+generated by GNU Autoconf 2.67.  Invocation command line was
 
   $ $0 $@
 
@@ -2299,8 +2849,8 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  $as_echo "PATH: $as_dir"
-done
+    $as_echo "PATH: $as_dir"
+  done
 IFS=$as_save_IFS
 
 } >&5
@@ -2337,9 +2887,9 @@ do
       ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
-    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
     2)
-      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      as_fn_append ac_configure_args1 " '$ac_arg'"
       if test $ac_must_keep_next = true; then
 	ac_must_keep_next=false # Got value, back to normal.
       else
@@ -2355,13 +2905,13 @@ do
 	  -* ) ac_must_keep_next=true ;;
 	esac
       fi
-      ac_configure_args="$ac_configure_args '$ac_arg'"
+      as_fn_append ac_configure_args " '$ac_arg'"
       ;;
     esac
   done
 done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
 
 # When interrupted or exit'd, cleanup temporary files, and complete
 # config.log.  We remove comments because anyway the quotes in there
@@ -2373,11 +2923,9 @@ trap 'exit_status=$?
   {
     echo
 
-    cat <<\_ASBOX
-## ---------------- ##
+    $as_echo "## ---------------- ##
 ## Cache variables. ##
-## ---------------- ##
-_ASBOX
+## ---------------- ##"
     echo
     # The following way of writing the cache mishandles newlines in values,
 (
@@ -2386,13 +2934,13 @@ _ASBOX
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
       BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) $as_unset $ac_var ;;
+      *) { eval $ac_var=; unset $ac_var;} ;;
       esac ;;
     esac
   done
@@ -2411,11 +2959,9 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 )
     echo
 
-    cat <<\_ASBOX
-## ----------------- ##
+    $as_echo "## ----------------- ##
 ## Output variables. ##
-## ----------------- ##
-_ASBOX
+## ----------------- ##"
     echo
     for ac_var in $ac_subst_vars
     do
@@ -2428,11 +2974,9 @@ _ASBOX
     echo
 
     if test -n "$ac_subst_files"; then
-      cat <<\_ASBOX
-## ------------------- ##
+      $as_echo "## ------------------- ##
 ## File substitutions. ##
-## ------------------- ##
-_ASBOX
+## ------------------- ##"
       echo
       for ac_var in $ac_subst_files
       do
@@ -2446,11 +2990,9 @@ _ASBOX
     fi
 
     if test -s confdefs.h; then
-      cat <<\_ASBOX
-## ----------- ##
+      $as_echo "## ----------- ##
 ## confdefs.h. ##
-## ----------- ##
-_ASBOX
+## ----------- ##"
       echo
       cat confdefs.h
       echo
@@ -2464,46 +3006,53 @@ _ASBOX
     exit $exit_status
 ' 0
 for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
 done
 ac_signal=0
 
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
+$as_echo "/* confdefs.h */" > confdefs.h
+
 # Predefined preprocessor variables.
 
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_NAME "$PACKAGE_NAME"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_TARNAME "$PACKAGE_TARNAME"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_VERSION "$PACKAGE_VERSION"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_STRING "$PACKAGE_STRING"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
 _ACEOF
 
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
 
 # Let the site file select an alternate cache file if it wants to.
 # Prefer an explicitly selected file to automatically selected ones.
 ac_site_file1=NONE
 ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  ac_site_file1=$CONFIG_SITE
+  # We do not want a PATH search for config.site.
+  case $CONFIG_SITE in #((
+    -*)  ac_site_file1=./$CONFIG_SITE;;
+    */*) ac_site_file1=$CONFIG_SITE;;
+    *)   ac_site_file1=./$CONFIG_SITE;;
+  esac
 elif test "x$prefix" != xNONE; then
   ac_site_file1=$prefix/share/config.site
   ac_site_file2=$prefix/etc/config.site
@@ -2514,19 +3063,23 @@ fi
 for ac_site_file in "$ac_site_file1" "$ac_site_file2"
 do
   test "x$ac_site_file" = xNONE && continue
-  if test -r "$ac_site_file"; then
-    { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
 $as_echo "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file"
+    . "$ac_site_file" \
+      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "failed to load site script $ac_site_file
+See \`config.log' for more details" "$LINENO" 5 ; }
   fi
 done
 
 if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special
-  # files actually), so we avoid doing that.
-  if test -f "$cache_file"; then
-    { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
+  # Some versions of bash will fail to source /dev/null (special files
+  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
+  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
 $as_echo "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
@@ -2534,7 +3087,7 @@ $as_echo "$as_me: loading cache $cache_file" >&6;}
     esac
   fi
 else
-  { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
 $as_echo "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
@@ -2549,11 +3102,11 @@ for ac_var in $ac_precious_vars; do
   eval ac_new_val=\$ac_env_${ac_var}_value
   case $ac_old_set,$ac_new_set in
     set,)
-      { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
@@ -2563,17 +3116,17 @@ $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
 	ac_old_val_w=`echo x $ac_old_val`
 	ac_new_val_w=`echo x $ac_new_val`
 	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
 	  ac_cache_corrupted=:
 	else
-	  { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
 	  eval $ac_var=\$ac_old_val
 	fi
-	{ $as_echo "$as_me:$LINENO:   former value:  \`$ac_old_val'" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
 $as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:$LINENO:   current value: \`$ac_new_val'" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
 $as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
       fi;;
   esac
@@ -2585,43 +3138,20 @@ $as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
     esac
     case " $ac_configure_args " in
       *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
     esac
   fi
 done
 if $ac_cache_corrupted; then
-  { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
 fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
 
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -2631,7 +3161,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 
-am__api_version='1.10'
+am__api_version='1.11'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -2650,9 +3180,7 @@ for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
-$as_echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
 fi
 
 # These three variables are undocumented and unsupported,
@@ -2678,10 +3206,10 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 # OS/2's system install, which has a completely different semantic
 # ./install, which can be erroneously created by make from ./install.sh.
 # Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
 $as_echo_n "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
+if test "${ac_cv_path_install+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -2689,11 +3217,11 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
-  ./ | .// | /cC/* | \
+    # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in #((
+  ./ | .// | /[cC]/* | \
   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
   /usr/ucb/* ) ;;
   *)
     # OSF1 and SCO ODT 3.0 have their own names for install.
@@ -2730,7 +3258,7 @@ case $as_dir/ in
     ;;
 esac
 
-done
+  done
 IFS=$as_save_IFS
 
 rm -rf conftest.one conftest.two conftest.dir
@@ -2746,7 +3274,7 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
 $as_echo "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -2757,21 +3285,34 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
-{ $as_echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
 $as_echo_n "checking whether build environment is sane... " >&6; }
 # Just in case
 sleep 1
 echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name.  Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+  *[\\\"\#\$\&\'\`$am_lf]*)
+    as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;;
+esac
+case $srcdir in
+  *[\\\"\#\$\&\'\`$am_lf\ \	]*)
+    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;;
+esac
+
 # Do `set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
    if test "$*" = "X"; then
       # -L didn't work.
-      set X `ls -t $srcdir/configure conftest.file`
+      set X `ls -t "$srcdir/configure" conftest.file`
    fi
    rm -f conftest.file
    if test "$*" != "X $srcdir/configure conftest.file" \
@@ -2781,11 +3322,8 @@ if (
       # if, for instance, CONFIG_SHELL is bash and it inherits a
       # broken ls alias from the environment.  This has actually
       # happened.  Such a system could not be considered "sane".
-      { { $as_echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" >&5
-$as_echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" >&2;}
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
+alias in your environment" "$LINENO" 5
    fi
 
    test "$2" = conftest.file
@@ -2794,13 +3332,10 @@ then
    # Ok.
    :
 else
-   { { $as_echo "$as_me:$LINENO: error: newly created file is older than distributed files!
-Check your system clock" >&5
-$as_echo "$as_me: error: newly created file is older than distributed files!
-Check your system clock" >&2;}
-   { (exit 1); exit 1; }; }
+   as_fn_error $? "newly created file is older than distributed files!
+Check your system clock" "$LINENO" 5
 fi
-{ $as_echo "$as_me:$LINENO: result: yes" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 test "$program_prefix" != NONE &&
   program_transform_name="s&^&$program_prefix&;$program_transform_name"
@@ -2815,20 +3350,136 @@ program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 # expand $ac_aux_dir to an absolute path
 am_aux_dir=`cd $ac_aux_dir && pwd`
 
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\	*)
+    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+  *)
+    MISSING="\${SHELL} $am_aux_dir/missing" ;;
+  esac
+fi
 # Use eval to expand $SHELL
 if eval "$MISSING --run true"; then
   am_missing_run="$MISSING --run "
 else
   am_missing_run=
-  { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
 fi
 
-{ $as_echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5
+if test x"${install_sh}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\	*)
+    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+  *)
+    install_sh="\${SHELL} $am_aux_dir/install-sh"
+  esac
+fi
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+  ac_ct_STRIP=$STRIP
+  # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_STRIP="strip"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_ct_STRIP" = x; then
+    STRIP=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    STRIP=$ac_ct_STRIP
+  fi
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if test "${ac_cv_path_mkdir+set}" = set; then
+  if test "${ac_cv_path_mkdir+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -2836,7 +3487,7 @@ for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_prog in mkdir gmkdir; do
+    for ac_prog in mkdir gmkdir; do
 	 for ac_exec_ext in '' $ac_executable_extensions; do
 	   { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
 	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
@@ -2848,11 +3499,12 @@ do
 	   esac
 	 done
        done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 
+  test -d ./--version && rmdir ./--version
   if test "${ac_cv_path_mkdir+set}" = set; then
     MKDIR_P="$ac_cv_path_mkdir -p"
   else
@@ -2860,11 +3512,10 @@ fi
     # value for MKDIR_P within a source directory, because that will
     # break other packages using the cache if that directory is
     # removed, or if the value is a relative name.
-    test -d ./--version && rmdir ./--version
     MKDIR_P="$ac_install_sh -d"
   fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $MKDIR_P" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
 $as_echo "$MKDIR_P" >&6; }
 
 mkdir_p="$MKDIR_P"
@@ -2877,9 +3528,9 @@ for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then
+if test "${ac_cv_prog_AWK+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$AWK"; then
@@ -2890,24 +3541,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:$LINENO: result: $AWK" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
 $as_echo "$AWK" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -2915,11 +3566,11 @@ fi
   test -n "$AWK" && break
 done
 
-{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 set x ${MAKE-make}
 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
   $as_echo_n "(cached) " >&6
 else
   cat >conftest.make <<\_ACEOF
@@ -2927,7 +3578,7 @@ SHELL = /bin/sh
 all:
 	@echo '@@@%%%=$(MAKE)=@@@%%%'
 _ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
 case `${MAKE-make} -f conftest.make 2>/dev/null` in
   *@@@%%%=?*=@@@%%%*)
     eval ac_cv_prog_make_${ac_make}_set=yes;;
@@ -2937,11 +3588,11 @@ esac
 rm -f conftest.make
 fi
 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:$LINENO: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
@@ -2961,9 +3612,7 @@ if test "`cd $srcdir && pwd`" != "`pwd`"; then
   am__isrc=' -I$(srcdir)'
   # test to see if srcdir already configured
   if test -f $srcdir/config.status; then
-    { { $as_echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
-$as_echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
   fi
 fi
 
@@ -3007,108 +3656,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 
 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
-  { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
-  ac_ct_STRIP=$STRIP
-  # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    STRIP=$ac_ct_STRIP
-  fi
-else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
 # Always define AMTAR for backward compatibility.
@@ -3116,7 +3663,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AMTAR=${AMTAR-"${am_missing_run}tar"}
 
 
-{ $as_echo "$as_me:$LINENO: checking how to create a ustar tar archive" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5
 $as_echo_n "checking how to create a ustar tar archive... " >&6; }
 # Loop over all known methods to create a tar archive until one works.
 _am_tools='gnutar plaintar pax cpio none'
@@ -3189,29 +3736,30 @@ do
 done
 rm -rf conftest.dir
 
-if test "${am_cv_prog_tar_ustar+set}" = set; then
+if test "${am_cv_prog_tar_ustar+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   am_cv_prog_tar_ustar=$_am_tool
 fi
 
-{ $as_echo "$as_me:$LINENO: result: $am_cv_prog_tar_ustar" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5
 $as_echo "$am_cv_prog_tar_ustar" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
     # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
+if test "${enable_maintainer_mode+set}" = set; then :
   enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
 else
   USE_MAINTAINER_MODE=no
 fi
 
-  { $as_echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
 $as_echo "$USE_MAINTAINER_MODE" >&6; }
    if test $USE_MAINTAINER_MODE = yes; then
   MAINTAINER_MODE_TRUE=
@@ -3231,16 +3779,16 @@ ACLOCAL_AMFLAGS="-I build/m4/shamrock -I build/m4/banshee -I build/m4/shave \${A
 
 
 
-  { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
 $as_echo_n "checking whether NLS is requested... " >&6; }
     # Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then
+if test "${enable_nls+set}" = set; then :
   enableval=$enable_nls; USE_NLS=$enableval
 else
   USE_NLS=yes
 fi
 
-  { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
 $as_echo "$USE_NLS" >&6; }
 
 
@@ -3252,44 +3800,44 @@ ac_config_commands="$ac_config_commands depfiles"
 am_make=${MAKE-make}
 cat > confinc << 'END'
 am__doit:
-	@echo done
+	@echo this is the am__doit target
 .PHONY: am__doit
 END
 # If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
 $as_echo_n "checking for style of include used by $am_make... " >&6; }
 am__include="#"
 am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
-   am__include=include
-   am__quote=
-   _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+  am__include=include
+  am__quote=
+  _am_result=GNU
+  ;;
+esac
 # Now try BSD make style include.
 if test "$am__include" = "#"; then
    echo '.include "confinc"' > confmf
-   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
-      am__include=.include
-      am__quote="\""
-      _am_result=BSD
-   fi
+   case `$am_make -s -f confmf 2> /dev/null` in #(
+   *the\ am__doit\ target*)
+     am__include=.include
+     am__quote="\""
+     _am_result=BSD
+     ;;
+   esac
 fi
 
 
-{ $as_echo "$as_me:$LINENO: result: $_am_result" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
 $as_echo "$_am_result" >&6; }
 rm -f confinc confmf
 
 # Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then
+if test "${enable_dependency_tracking+set}" = set; then :
   enableval=$enable_dependency_tracking;
 fi
 
@@ -3314,9 +3862,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -3327,24 +3875,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3354,9 +3902,9 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_CC"; then
@@ -3367,24 +3915,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
 $as_echo "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3393,7 +3941,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -3407,9 +3955,9 @@ if test -z "$CC"; then
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -3420,24 +3968,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3447,9 +3995,9 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -3461,18 +4009,18 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 if test $ac_prog_rejected = yes; then
@@ -3491,10 +4039,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3506,9 +4054,9 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -3519,24 +4067,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3550,9 +4098,9 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_CC"; then
@@ -3563,24 +4111,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
 $as_echo "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -3593,7 +4141,7 @@ done
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -3604,57 +4152,37 @@ fi
 fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+as_fn_error $? "no acceptable C compiler found in \$PATH
+See \`config.log' for more details" "$LINENO" 5 ; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-{ (ac_try="$ac_compiler --version >&5"
+for ac_option in --version -v -V -qversion; do
+  { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler --version >&5") 2>&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler -v >&5") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler -V >&5") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
+  if test -s conftest.err; then
+    sed '10a\
+... rest of stderr output deleted ...
+         10q' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+  fi
+  rm -f conftest.er1 conftest.err
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+done
 
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -3670,8 +4198,8 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
 ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 
 # The possible output files:
@@ -3687,17 +4215,17 @@ do
 done
 rm -f $ac_rmfiles
 
-if { (ac_try="$ac_link_default"
+if { { ac_try="$ac_link_default"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 # in a Makefile.  We should not override ac_cv_exeext if it was cached,
@@ -3714,7 +4242,7 @@ do
 	# certainly right.
 	break;;
     *.* )
-        if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
 	then :; else
 	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 	fi
@@ -3733,84 +4261,41 @@ test "$ac_cv_exeext" = no && ac_cv_exeext=
 else
   ac_file=''
 fi
-
-{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-if test -z "$ac_file"; then
-  $as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }; }
+as_fn_error 77 "C compiler cannot create executables
+See \`config.log' for more details" "$LINENO" 5 ; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
-  if { ac_try='./$ac_file'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-	cross_compiling=yes
-    else
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
 $as_echo_n "checking for suffix of executables... " >&6; }
-if { (ac_try="$ac_link"
+if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -3825,32 +4310,83 @@ for ac_file in conftest.exe conftest conftest.*; do
   esac
 done
 else
-  { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details" "$LINENO" 5 ; }
 fi
-
-rm -f conftest$ac_cv_exeext
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
 $as_echo "$ac_cv_exeext" >&6; }
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
 ac_exeext=$EXEEXT
-{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+  { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+  if { ac_try='./conftest$ac_cv_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+	cross_compiling=yes
+    else
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details" "$LINENO" 5 ; }
+    fi
+  fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
 $as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then
+if test "${ac_cv_objext+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -3862,17 +4398,17 @@ main ()
 }
 _ACEOF
 rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
+if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   for ac_file in conftest.o conftest.obj conftest.*; do
   test -f "$ac_file" || continue;
   case $ac_file in
@@ -3885,31 +4421,23 @@ else
   $as_echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details" "$LINENO" 5 ; }
 fi
-
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
 $as_echo "$ac_cv_objext" >&6; }
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
+if test "${ac_cv_c_compiler_gnu+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -3923,37 +4451,16 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_compiler_gnu=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_compiler_gnu=no
+  ac_compiler_gnu=no
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
 if test $ac_compiler_gnu = yes; then
   GCC=yes
@@ -3962,20 +4469,16 @@ else
 fi
 ac_test_CFLAGS=${CFLAGS+set}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
 $as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
+if test "${ac_cv_prog_cc_g+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
    CFLAGS="-g"
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -3986,35 +4489,11 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_g=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	CFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  CFLAGS=""
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -4025,36 +4504,12 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  :
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_compile "$LINENO"; then :
 
-	ac_c_werror_flag=$ac_save_c_werror_flag
+else
+  ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -4065,42 +4520,17 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_g=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
 $as_echo "$ac_cv_prog_cc_g" >&6; }
 if test "$ac_test_CFLAGS" = set; then
   CFLAGS=$ac_save_CFLAGS
@@ -4117,18 +4547,14 @@ else
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
+if test "${ac_cv_prog_cc_c89+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_cv_prog_cc_c89=no
 ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
@@ -4185,32 +4611,9 @@ for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
 	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+  if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_c89=$ac_arg
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
@@ -4221,17 +4624,19 @@ fi
 # AC_CACHE_VAL
 case "x$ac_cv_prog_cc_c89" in
   x)
-    { $as_echo "$as_me:$LINENO: result: none needed" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
 $as_echo "none needed" >&6; } ;;
   xno)
-    { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
 $as_echo "unsupported" >&6; } ;;
   *)
     CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
 esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+fi
 
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -4241,9 +4646,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 depcc="$CC"   am_compiler_list=
 
-{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
 $as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
@@ -4269,6 +4674,11 @@ else
   if test "$am_compiler_list" = ""; then
      am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
   fi
+  am__universal=false
+  case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac
+
   for depmode in $am_compiler_list; do
     # Setup a source with many dependencies, because some compilers
     # like to wrap large dependency lists on column 80 (with \), and
@@ -4286,7 +4696,17 @@ else
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs
+    am__obj=sub/conftest.${OBJEXT-o}
+    am__minus_obj="-o $am__obj"
     case $depmode in
+    gcc)
+      # This depmode causes a compiler race in universal mode.
+      test "$am__universal" = false || continue
+      ;;
     nosideeffect)
       # after this tag, mechanisms are not by side-effect, so they'll
       # only be used when explicitly requested
@@ -4296,19 +4716,23 @@ else
 	break
       fi
       ;;
+    msvisualcpp | msvcmsys)
+      # This compiler won't grok `-c -o', but also, the minuso test has
+      # not run yet.  These depmodes are late enough in the game, and
+      # so weak that their functioning should not be impacted.
+      am__obj=conftest.${OBJEXT-o}
+      am__minus_obj=
+      ;;
     none) break ;;
     esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       source=sub/conftest.c object=$am__obj \
        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
          >/dev/null 2>conftest.err &&
        grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
        grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
       # or remarks (even with -Werror).  So we grep stderr for any message
@@ -4332,7 +4756,7 @@ else
 fi
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
@@ -4352,35 +4776,31 @@ fi
 
 case "$am__api_version" in
     1.01234)
-	{ { $as_echo "$as_me:$LINENO: error: Automake 1.5 or newer is required to use intltool" >&5
-$as_echo "$as_me: error: Automake 1.5 or newer is required to use intltool" >&2;}
-   { (exit 1); exit 1; }; }
+	as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5
     ;;
     *)
     ;;
 esac
 
 if test -n "0.35.0"; then
-    { $as_echo "$as_me:$LINENO: checking for intltool >= 0.35.0" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.35.0" >&5
 $as_echo_n "checking for intltool >= 0.35.0... " >&6; }
 
     INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.35.0 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
     INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3`
     INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
 
-    { $as_echo "$as_me:$LINENO: result: $INTLTOOL_APPLIED_VERSION found" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5
 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; }
     test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
-	{ { $as_echo "$as_me:$LINENO: error: Your intltool is too old.  You need intltool 0.35.0 or later." >&5
-$as_echo "$as_me: error: Your intltool is too old.  You need intltool 0.35.0 or later." >&2;}
-   { (exit 1); exit 1; }; }
+	as_fn_error $? "Your intltool is too old.  You need intltool 0.35.0 or later." "$LINENO" 5
 fi
 
 # Extract the first word of "intltool-update", so it can be a program name with args.
 set dummy intltool-update; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then
+if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $INTLTOOL_UPDATE in
@@ -4393,14 +4813,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4408,19 +4828,19 @@ esac
 fi
 INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE
 if test -n "$INTLTOOL_UPDATE"; then
-  { $as_echo "$as_me:$LINENO: result: $INTLTOOL_UPDATE" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5
 $as_echo "$INTLTOOL_UPDATE" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 # Extract the first word of "intltool-merge", so it can be a program name with args.
 set dummy intltool-merge; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then
+if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $INTLTOOL_MERGE in
@@ -4433,14 +4853,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4448,19 +4868,19 @@ esac
 fi
 INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE
 if test -n "$INTLTOOL_MERGE"; then
-  { $as_echo "$as_me:$LINENO: result: $INTLTOOL_MERGE" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5
 $as_echo "$INTLTOOL_MERGE" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 # Extract the first word of "intltool-extract", so it can be a program name with args.
 set dummy intltool-extract; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then
+if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $INTLTOOL_EXTRACT in
@@ -4473,14 +4893,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4488,18 +4908,16 @@ esac
 fi
 INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT
 if test -n "$INTLTOOL_EXTRACT"; then
-  { $as_echo "$as_me:$LINENO: result: $INTLTOOL_EXTRACT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5
 $as_echo "$INTLTOOL_EXTRACT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then
-    { { $as_echo "$as_me:$LINENO: error: The intltool scripts were not found. Please install intltool." >&5
-$as_echo "$as_me: error: The intltool scripts were not found. Please install intltool." >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5
 fi
 
   INTLTOOL_DESKTOP_RULE='%.desktop:   %.desktop.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
@@ -4542,12 +4960,88 @@ INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcar
 
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 # Check the gettext tools to make sure they are GNU
 # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_XGETTEXT+set}" = set; then
+if test "${ac_cv_path_XGETTEXT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $XGETTEXT in
@@ -4560,14 +5054,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4575,19 +5069,19 @@ esac
 fi
 XGETTEXT=$ac_cv_path_XGETTEXT
 if test -n "$XGETTEXT"; then
-  { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
 $as_echo "$XGETTEXT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 # Extract the first word of "msgmerge", so it can be a program name with args.
 set dummy msgmerge; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MSGMERGE+set}" = set; then
+if test "${ac_cv_path_MSGMERGE+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MSGMERGE in
@@ -4600,14 +5094,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4615,19 +5109,19 @@ esac
 fi
 MSGMERGE=$ac_cv_path_MSGMERGE
 if test -n "$MSGMERGE"; then
-  { $as_echo "$as_me:$LINENO: result: $MSGMERGE" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
 $as_echo "$MSGMERGE" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MSGFMT+set}" = set; then
+if test "${ac_cv_path_MSGFMT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MSGFMT in
@@ -4640,14 +5134,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4655,19 +5149,19 @@ esac
 fi
 MSGFMT=$ac_cv_path_MSGFMT
 if test -n "$MSGFMT"; then
-  { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
 $as_echo "$MSGFMT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_GMSGFMT+set}" = set; then
+if test "${ac_cv_path_GMSGFMT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $GMSGFMT in
@@ -4680,14 +5174,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
@@ -4696,33 +5190,29 @@ esac
 fi
 GMSGFMT=$ac_cv_path_GMSGFMT
 if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
 $as_echo "$GMSGFMT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then
-    { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5
-$as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5
 fi
 xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`"
 mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`"
 mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`"
 if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
-    { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5
-$as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5
 fi
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then
+if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $INTLTOOL_PERL in
@@ -4735,14 +5225,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -4750,34 +5240,35 @@ esac
 fi
 INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL
 if test -n "$INTLTOOL_PERL"; then
-  { $as_echo "$as_me:$LINENO: result: $INTLTOOL_PERL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_PERL" >&5
 $as_echo "$INTLTOOL_PERL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 if test -z "$INTLTOOL_PERL"; then
-   { { $as_echo "$as_me:$LINENO: error: perl not found; required for intltool" >&5
-$as_echo "$as_me: error: perl not found; required for intltool" >&2;}
-   { (exit 1); exit 1; }; }
+   as_fn_error $? "perl not found" "$LINENO" 5
 fi
-if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then
-   { { $as_echo "$as_me:$LINENO: error: perl 5.x required for intltool" >&5
-$as_echo "$as_me: error: perl 5.x required for intltool" >&2;}
-   { (exit 1); exit 1; }; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl >= 5.8.1" >&5
+$as_echo_n "checking for perl >= 5.8.1... " >&6; }
+$INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1
+if test $? -ne 0; then
+   as_fn_error $? "perl 5.8.1 is required for intltool" "$LINENO" 5
+else
+   IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`"
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IT_PERL_VERSION" >&5
+$as_echo "$IT_PERL_VERSION" >&6; }
 fi
 if test "x" != "xno-xml"; then
-   { $as_echo "$as_me:$LINENO: checking for XML::Parser" >&5
+   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML::Parser" >&5
 $as_echo_n "checking for XML::Parser... " >&6; }
    if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
-       { $as_echo "$as_me:$LINENO: result: ok" >&5
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
 $as_echo "ok" >&6; }
    else
-       { { $as_echo "$as_me:$LINENO: error: XML::Parser perl module is required for intltool" >&5
-$as_echo "$as_me: error: XML::Parser perl module is required for intltool" >&2;}
-   { (exit 1); exit 1; }; }
+       as_fn_error $? "XML::Parser perl module is required for intltool" "$LINENO" 5
    fi
 fi
 
@@ -4787,11 +5278,7 @@ fi
 # Set DATADIRNAME correctly if it is not set yet
 # (copied from glib-gettext.m4)
 if test -z "$DATADIRNAME"; then
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -4803,120 +5290,13 @@ extern int _nl_msg_cat_cntr;
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   DATADIRNAME=share
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	case $host in
+  case $host in
     *-*-solaris*)
-                        { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5
-$as_echo_n "checking for bind_textdomain_codeset... " >&6; }
-if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define bind_textdomain_codeset innocuous_bind_textdomain_codeset
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char bind_textdomain_codeset (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef bind_textdomain_codeset
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char bind_textdomain_codeset ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset
-choke me
-#endif
-
-int
-main ()
-{
-return bind_textdomain_codeset ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  ac_cv_func_bind_textdomain_codeset=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_func_bind_textdomain_codeset=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5
-$as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; }
-if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then
+                        ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset"
+if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then :
   DATADIRNAME=share
 else
   DATADIRNAME=lib
@@ -4928,10 +5308,8 @@ fi
     ;;
     esac
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 fi
 
 
@@ -4940,14 +5318,14 @@ fi
 
 case `pwd` in
   *\ * | *\	*)
-    { $as_echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
 esac
 
 
 
-macro_version='2.2.6'
-macro_revision='1.3012'
+macro_version='2.2.6b'
+macro_revision='1.3017'
 
 
 
@@ -4965,35 +5343,27 @@ ltmain="$ac_aux_dir/ltmain.sh"
 
 # Make sure we can run config.sub.
 $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
-$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
 
-{ $as_echo "$as_me:$LINENO: checking build system type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
 $as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then
+if test "${ac_cv_build+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_build_alias=$build_alias
 test "x$ac_build_alias" = x &&
   ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
 test "x$ac_build_alias" = x &&
-  { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
-$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
 $as_echo "$ac_cv_build" >&6; }
 case $ac_cv_build in
 *-*-*) ;;
-*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
-$as_echo "$as_me: error: invalid value of canonical build" >&2;}
-   { (exit 1); exit 1; }; };;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;;
 esac
 build=$ac_cv_build
 ac_save_IFS=$IFS; IFS='-'
@@ -5009,28 +5379,24 @@ IFS=$ac_save_IFS
 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
 
 
-{ $as_echo "$as_me:$LINENO: checking host system type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
 $as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then
+if test "${ac_cv_host+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test "x$host_alias" = x; then
   ac_cv_host=$ac_cv_build
 else
   ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
-$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
 fi
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
 $as_echo "$ac_cv_host" >&6; }
 case $ac_cv_host in
 *-*-*) ;;
-*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
-$as_echo "$as_me: error: invalid value of canonical host" >&2;}
-   { (exit 1); exit 1; }; };;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;;
 esac
 host=$ac_cv_host
 ac_save_IFS=$IFS; IFS='-'
@@ -5046,9 +5412,9 @@ IFS=$ac_save_IFS
 case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
 
 
-{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
 $as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then
+if test "${ac_cv_path_SED+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
             ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
@@ -5056,7 +5422,7 @@ else
        ac_script="$ac_script$as_nl$ac_script"
      done
      echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
-     $as_unset ac_script || ac_script=
+     { ac_script=; unset ac_script;}
      if test -z "$SED"; then
   ac_path_SED_found=false
   # Loop through the user's path and test for each of PROGNAME-LIST
@@ -5065,7 +5431,7 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_prog in sed gsed; do
+    for ac_prog in sed gsed; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
       { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
@@ -5085,7 +5451,7 @@ case `"$ac_path_SED" --version 2>&1` in
     $as_echo '' >> "conftest.nl"
     "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
     if test $ac_count -gt ${ac_path_SED_max-0}; then
       # Best one so far, save it but keep looking for a better one
       ac_cv_path_SED="$ac_path_SED"
@@ -5100,19 +5466,17 @@ esac
       $ac_path_SED_found && break 3
     done
   done
-done
+  done
 IFS=$as_save_IFS
   if test -z "$ac_cv_path_SED"; then
-    { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
-$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
   fi
 else
   ac_cv_path_SED=$SED
 fi
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
 $as_echo "$ac_cv_path_SED" >&6; }
  SED="$ac_cv_path_SED"
   rm -f conftest.sed
@@ -5130,9 +5494,9 @@ Xsed="$SED -e 1s/^X//"
 
 
 
-{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
 $as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
+if test "${ac_cv_path_GREP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$GREP"; then
@@ -5143,7 +5507,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_prog in grep ggrep; do
+    for ac_prog in grep ggrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
       { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
@@ -5163,7 +5527,7 @@ case `"$ac_path_GREP" --version 2>&1` in
     $as_echo 'GREP' >> "conftest.nl"
     "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
     if test $ac_count -gt ${ac_path_GREP_max-0}; then
       # Best one so far, save it but keep looking for a better one
       ac_cv_path_GREP="$ac_path_GREP"
@@ -5178,26 +5542,24 @@ esac
       $ac_path_GREP_found && break 3
     done
   done
-done
+  done
 IFS=$as_save_IFS
   if test -z "$ac_cv_path_GREP"; then
-    { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
   fi
 else
   ac_cv_path_GREP=$GREP
 fi
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
 $as_echo "$ac_cv_path_GREP" >&6; }
  GREP="$ac_cv_path_GREP"
 
 
-{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
 $as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
+if test "${ac_cv_path_EGREP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
@@ -5211,7 +5573,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_prog in egrep; do
+    for ac_prog in egrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
       { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
@@ -5231,7 +5593,7 @@ case `"$ac_path_EGREP" --version 2>&1` in
     $as_echo 'EGREP' >> "conftest.nl"
     "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
     if test $ac_count -gt ${ac_path_EGREP_max-0}; then
       # Best one so far, save it but keep looking for a better one
       ac_cv_path_EGREP="$ac_path_EGREP"
@@ -5246,12 +5608,10 @@ esac
       $ac_path_EGREP_found && break 3
     done
   done
-done
+  done
 IFS=$as_save_IFS
   if test -z "$ac_cv_path_EGREP"; then
-    { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
   fi
 else
   ac_cv_path_EGREP=$EGREP
@@ -5259,14 +5619,14 @@ fi
 
    fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
 $as_echo "$ac_cv_path_EGREP" >&6; }
  EGREP="$ac_cv_path_EGREP"
 
 
-{ $as_echo "$as_me:$LINENO: checking for fgrep" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
 $as_echo_n "checking for fgrep... " >&6; }
-if test "${ac_cv_path_FGREP+set}" = set; then
+if test "${ac_cv_path_FGREP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
@@ -5280,7 +5640,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_prog in fgrep; do
+    for ac_prog in fgrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
       { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
@@ -5300,7 +5660,7 @@ case `"$ac_path_FGREP" --version 2>&1` in
     $as_echo 'FGREP' >> "conftest.nl"
     "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
     if test $ac_count -gt ${ac_path_FGREP_max-0}; then
       # Best one so far, save it but keep looking for a better one
       ac_cv_path_FGREP="$ac_path_FGREP"
@@ -5315,12 +5675,10 @@ esac
       $ac_path_FGREP_found && break 3
     done
   done
-done
+  done
 IFS=$as_save_IFS
   if test -z "$ac_cv_path_FGREP"; then
-    { { $as_echo "$as_me:$LINENO: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
   fi
 else
   ac_cv_path_FGREP=$FGREP
@@ -5328,7 +5686,7 @@ fi
 
    fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_FGREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
 $as_echo "$ac_cv_path_FGREP" >&6; }
  FGREP="$ac_cv_path_FGREP"
 
@@ -5354,7 +5712,7 @@ test -z "$GREP" && GREP=grep
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then
+if test "${with_gnu_ld+set}" = set; then :
   withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
 else
   with_gnu_ld=no
@@ -5363,7 +5721,7 @@ fi
 ac_prog=ld
 if test "$GCC" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:$LINENO: checking for ld used by $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
 $as_echo_n "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
@@ -5393,13 +5751,13 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
     ;;
   esac
 elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:$LINENO: checking for GNU ld" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
 $as_echo_n "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:$LINENO: checking for non-GNU ld" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
 $as_echo_n "checking for non-GNU ld... " >&6; }
 fi
-if test "${lt_cv_path_LD+set}" = set; then
+if test "${lt_cv_path_LD+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$LD"; then
@@ -5430,18 +5788,16 @@ fi
 
 LD="$lt_cv_path_LD"
 if test -n "$LD"; then
-  { $as_echo "$as_me:$LINENO: result: $LD" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
 $as_echo "$LD" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
-test -z "$LD" && { { $as_echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
-$as_echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
-   { (exit 1); exit 1; }; }
-{ $as_echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
+test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then
+if test "${lt_cv_prog_gnu_ld+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
@@ -5454,7 +5810,7 @@ case `$LD -v 2>&1 </dev/null` in
   ;;
 esac
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
 $as_echo "$lt_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$lt_cv_prog_gnu_ld
 
@@ -5466,9 +5822,9 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
 
-{ $as_echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if test "${lt_cv_path_NM+set}" = set; then
+if test "${lt_cv_path_NM+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$NM"; then
@@ -5515,7 +5871,7 @@ else
   : ${lt_cv_path_NM=no}
 fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
 $as_echo "$lt_cv_path_NM" >&6; }
 if test "$lt_cv_path_NM" != "no"; then
   NM="$lt_cv_path_NM"
@@ -5526,9 +5882,9 @@ else
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DUMPBIN+set}" = set; then
+if test "${ac_cv_prog_DUMPBIN+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$DUMPBIN"; then
@@ -5539,24 +5895,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 DUMPBIN=$ac_cv_prog_DUMPBIN
 if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:$LINENO: result: $DUMPBIN" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
 $as_echo "$DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -5570,9 +5926,9 @@ if test -z "$DUMPBIN"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then
+if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_DUMPBIN"; then
@@ -5583,24 +5939,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
 if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_DUMPBIN" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
 $as_echo "$ac_ct_DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -5613,7 +5969,7 @@ done
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -5633,44 +5989,44 @@ test -z "$NM" && NM=nm
 
 
 
-{ $as_echo "$as_me:$LINENO: checking the name lister ($NM) interface" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
 $as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if test "${lt_cv_nm_interface+set}" = set; then
+if test "${lt_cv_nm_interface+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5643: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5999: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5646: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:6002: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5649: output\"" >&5)
+  (eval echo "\"\$as_me:6005: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_nm_interface" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
 $as_echo "$lt_cv_nm_interface" >&6; }
 
-{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
 $as_echo_n "checking whether ln -s works... " >&6; }
 LN_S=$as_ln_s
 if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:$LINENO: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
 $as_echo "no, using $LN_S" >&6; }
 fi
 
 # find the maximum length of command line arguments
-{ $as_echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
 $as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if test "${lt_cv_sys_max_cmd_len+set}" = set; then
+if test "${lt_cv_sys_max_cmd_len+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
     i=0
@@ -5788,10 +6144,10 @@ else
 fi
 
 if test -n $lt_cv_sys_max_cmd_len ; then
-  { $as_echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: none" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
 $as_echo "none" >&6; }
 fi
 max_cmd_len=$lt_cv_sys_max_cmd_len
@@ -5805,7 +6161,7 @@ max_cmd_len=$lt_cv_sys_max_cmd_len
 : ${MV="mv -f"}
 : ${RM="rm -f"}
 
-{ $as_echo "$as_me:$LINENO: checking whether the shell understands some XSI constructs" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
 $as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
 # Try some XSI features
 xsi_shell=no
@@ -5815,17 +6171,17 @@ xsi_shell=no
     && eval 'test $(( 1 + 1 )) -eq 2 \
     && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
-{ $as_echo "$as_me:$LINENO: result: $xsi_shell" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
 $as_echo "$xsi_shell" >&6; }
 
 
-{ $as_echo "$as_me:$LINENO: checking whether the shell understands \"+=\"" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
 $as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
 lt_shell_append=no
 ( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
     >/dev/null 2>&1 \
   && lt_shell_append=yes
-{ $as_echo "$as_me:$LINENO: result: $lt_shell_append" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
 $as_echo "$lt_shell_append" >&6; }
 
 
@@ -5860,14 +6216,14 @@ esac
 
 
 
-{ $as_echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
 $as_echo_n "checking for $LD option to reload object files... " >&6; }
-if test "${lt_cv_ld_reload_flag+set}" = set; then
+if test "${lt_cv_ld_reload_flag+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_ld_reload_flag='-r'
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
 $as_echo "$lt_cv_ld_reload_flag" >&6; }
 reload_flag=$lt_cv_ld_reload_flag
 case $reload_flag in
@@ -5896,9 +6252,9 @@ esac
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
 set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$OBJDUMP"; then
@@ -5909,24 +6265,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 OBJDUMP=$ac_cv_prog_OBJDUMP
 if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
 $as_echo "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -5936,9 +6292,9 @@ if test -z "$ac_cv_prog_OBJDUMP"; then
   ac_ct_OBJDUMP=$OBJDUMP
   # Extract the first word of "objdump", so it can be a program name with args.
 set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_OBJDUMP"; then
@@ -5949,24 +6305,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
 if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
 $as_echo "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -5975,7 +6331,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -5995,9 +6351,9 @@ test -z "$OBJDUMP" && OBJDUMP=objdump
 
 
 
-{ $as_echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
 $as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if test "${lt_cv_deplibs_check_method+set}" = set; then
+if test "${lt_cv_deplibs_check_method+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_file_magic_cmd='$MAGIC_CMD'
@@ -6112,11 +6468,11 @@ irix5* | irix6* | nonstopux*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
   else
@@ -6191,7 +6547,7 @@ tpf*)
 esac
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
 $as_echo "$lt_cv_deplibs_check_method" >&6; }
 file_magic_cmd=$lt_cv_file_magic_cmd
 deplibs_check_method=$lt_cv_deplibs_check_method
@@ -6211,9 +6567,9 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AR+set}" = set; then
+if test "${ac_cv_prog_AR+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$AR"; then
@@ -6224,24 +6580,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_AR="${ac_tool_prefix}ar"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 AR=$ac_cv_prog_AR
 if test -n "$AR"; then
-  { $as_echo "$as_me:$LINENO: result: $AR" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
 $as_echo "$AR" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6251,9 +6607,9 @@ if test -z "$ac_cv_prog_AR"; then
   ac_ct_AR=$AR
   # Extract the first word of "ar", so it can be a program name with args.
 set dummy ar; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_AR"; then
@@ -6264,24 +6620,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_AR="ar"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_AR=$ac_cv_prog_ac_ct_AR
 if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
 $as_echo "$ac_ct_AR" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6290,7 +6646,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -6316,9 +6672,9 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then
+if test "${ac_cv_prog_STRIP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$STRIP"; then
@@ -6329,24 +6685,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
 $as_echo "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6356,9 +6712,9 @@ if test -z "$ac_cv_prog_STRIP"; then
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_STRIP"; then
@@ -6369,24 +6725,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
 $as_echo "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6395,7 +6751,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -6415,9 +6771,9 @@ test -z "$STRIP" && STRIP=:
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then
+if test "${ac_cv_prog_RANLIB+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$RANLIB"; then
@@ -6428,24 +6784,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 RANLIB=$ac_cv_prog_RANLIB
 if test -n "$RANLIB"; then
-  { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
 $as_echo "$RANLIB" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6455,9 +6811,9 @@ if test -z "$ac_cv_prog_RANLIB"; then
   ac_ct_RANLIB=$RANLIB
   # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_RANLIB"; then
@@ -6468,24 +6824,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
 if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
 $as_echo "$ac_ct_RANLIB" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -6494,7 +6850,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -6572,9 +6928,9 @@ compiler=$CC
 
 
 # Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then
+if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
 
@@ -6690,18 +7046,18 @@ void nm_test_func(void){}
 int main(){nm_test_var='a';nm_test_func();return(0);}
 _LT_EOF
 
-  if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
     # Now try to grab the symbols.
     nlist=conftest.nm
-    if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5
+    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5
   (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s "$nlist"; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
 	mv -f "$nlist"T "$nlist"
@@ -6754,11 +7110,11 @@ _LT_EOF
 	  lt_save_CFLAGS="$CFLAGS"
 	  LIBS="conftstm.$ac_objext"
 	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
-	  if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest${ac_exeext}; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && test -s conftest${ac_exeext}; then
 	    pipe_works=yes
 	  fi
 	  LIBS="$lt_save_LIBS"
@@ -6792,10 +7148,10 @@ if test -z "$lt_cv_sys_global_symbol_pipe"; then
   lt_cv_sys_global_symbol_to_cdecl=
 fi
 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:$LINENO: result: failed" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
 $as_echo "failed" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: ok" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
 $as_echo "ok" >&6; }
 fi
 
@@ -6821,7 +7177,7 @@ fi
 
 
 # Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then
+if test "${enable_libtool_lock+set}" = set; then :
   enableval=$enable_libtool_lock;
 fi
 
@@ -6833,11 +7189,11 @@ case $host in
 ia64-*-hpux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
-  if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
 	HPUX_IA64_MODE="32"
@@ -6851,12 +7207,12 @@ ia64-*-hpux*)
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6854 "configure"' > conftest.$ac_ext
-  if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  echo '#line 7210 "configure"' > conftest.$ac_ext
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
     if test "$lt_cv_prog_gnu_ld" = yes; then
       case `/usr/bin/file conftest.$ac_objext` in
 	*32-bit*)
@@ -6890,11 +7246,11 @@ x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
-  if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
     case `/usr/bin/file conftest.o` in
       *32-bit*)
 	case $host in
@@ -6943,9 +7299,9 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
   SAVE_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if test "${lt_cv_cc_needs_belf+set}" = set; then
+if test "${lt_cv_cc_needs_belf+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_ext=c
@@ -6954,11 +7310,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-     cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -6969,38 +7321,13 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   lt_cv_cc_needs_belf=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	lt_cv_cc_needs_belf=no
+  lt_cv_cc_needs_belf=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
      ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -7008,7 +7335,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
 $as_echo "$lt_cv_cc_needs_belf" >&6; }
   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
@@ -7018,11 +7345,11 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
 sparc*-*solaris*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
-  if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
     case `/usr/bin/file conftest.o` in
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
@@ -7048,9 +7375,9 @@ need_locks="$enable_libtool_lock"
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$DSYMUTIL"; then
@@ -7061,24 +7388,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 DSYMUTIL=$ac_cv_prog_DSYMUTIL
 if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
 $as_echo "$DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7088,9 +7415,9 @@ if test -z "$ac_cv_prog_DSYMUTIL"; then
   ac_ct_DSYMUTIL=$DSYMUTIL
   # Extract the first word of "dsymutil", so it can be a program name with args.
 set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_DSYMUTIL"; then
@@ -7101,24 +7428,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
 if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
 $as_echo "$ac_ct_DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7127,7 +7454,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -7140,9 +7467,9 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
 set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_NMEDIT+set}" = set; then
+if test "${ac_cv_prog_NMEDIT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$NMEDIT"; then
@@ -7153,24 +7480,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 NMEDIT=$ac_cv_prog_NMEDIT
 if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:$LINENO: result: $NMEDIT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
 $as_echo "$NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7180,9 +7507,9 @@ if test -z "$ac_cv_prog_NMEDIT"; then
   ac_ct_NMEDIT=$NMEDIT
   # Extract the first word of "nmedit", so it can be a program name with args.
 set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_NMEDIT"; then
@@ -7193,24 +7520,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
 if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
 $as_echo "$ac_ct_NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7219,7 +7546,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -7232,9 +7559,9 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
 set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_LIPO+set}" = set; then
+if test "${ac_cv_prog_LIPO+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$LIPO"; then
@@ -7245,24 +7572,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 LIPO=$ac_cv_prog_LIPO
 if test -n "$LIPO"; then
-  { $as_echo "$as_me:$LINENO: result: $LIPO" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
 $as_echo "$LIPO" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7272,9 +7599,9 @@ if test -z "$ac_cv_prog_LIPO"; then
   ac_ct_LIPO=$LIPO
   # Extract the first word of "lipo", so it can be a program name with args.
 set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_LIPO"; then
@@ -7285,24 +7612,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
 if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
 $as_echo "$ac_ct_LIPO" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7311,7 +7638,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -7324,9 +7651,9 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL+set}" = set; then
+if test "${ac_cv_prog_OTOOL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$OTOOL"; then
@@ -7337,24 +7664,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 OTOOL=$ac_cv_prog_OTOOL
 if test -n "$OTOOL"; then
-  { $as_echo "$as_me:$LINENO: result: $OTOOL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
 $as_echo "$OTOOL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7364,9 +7691,9 @@ if test -z "$ac_cv_prog_OTOOL"; then
   ac_ct_OTOOL=$OTOOL
   # Extract the first word of "otool", so it can be a program name with args.
 set dummy otool; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_OTOOL"; then
@@ -7377,24 +7704,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_OTOOL="otool"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
 if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
 $as_echo "$ac_ct_OTOOL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7403,7 +7730,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -7416,9 +7743,9 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL64+set}" = set; then
+if test "${ac_cv_prog_OTOOL64+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$OTOOL64"; then
@@ -7429,24 +7756,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 OTOOL64=$ac_cv_prog_OTOOL64
 if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:$LINENO: result: $OTOOL64" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
 $as_echo "$OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7456,9 +7783,9 @@ if test -z "$ac_cv_prog_OTOOL64"; then
   ac_ct_OTOOL64=$OTOOL64
   # Extract the first word of "otool64", so it can be a program name with args.
 set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_OTOOL64"; then
@@ -7469,24 +7796,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_OTOOL64="otool64"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
 if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
 $as_echo "$ac_ct_OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -7495,7 +7822,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -7531,9 +7858,9 @@ fi
 
 
 
-    { $as_echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
 $as_echo_n "checking for -single_module linker flag... " >&6; }
-if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_apple_cc_single_mod=no
@@ -7558,22 +7885,18 @@ else
 	rm -f conftest.*
       fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
 $as_echo "$lt_cv_apple_cc_single_mod" >&6; }
-    { $as_echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_ld_exported_symbols_list=no
       save_LDFLAGS=$LDFLAGS
       echo "_main" > conftest.sym
       LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -7584,42 +7907,17 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   lt_cv_ld_exported_symbols_list=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	lt_cv_ld_exported_symbols_list=no
+  lt_cv_ld_exported_symbols_list=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 	LDFLAGS="$save_LDFLAGS"
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
     case $host_os in
     rhapsody* | darwin1.[012])
@@ -7661,14 +7959,14 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
 $as_echo_n "checking how to run the C preprocessor... " >&6; }
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
 fi
 if test -z "$CPP"; then
-  if test "${ac_cv_prog_CPP+set}" = set; then
+  if test "${ac_cv_prog_CPP+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
       # Double quotes because CPP needs to be expanded
@@ -7683,11 +7981,7 @@ do
   # <limits.h> exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifdef __STDC__
 # include <limits.h>
@@ -7696,78 +7990,34 @@ cat >>conftest.$ac_ext <<_ACEOF
 #endif
 		     Syntax error
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
 
+else
   # Broken: fails on valid input.
 continue
 fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
 
   # OK, works on sane cases.  Now check whether nonexistent headers
   # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <ac_nonexistent.h>
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
   # Broken: success on invalid input.
 continue
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
   # Passes both tests.
 ac_preproc_ok=:
 break
 fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
 
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
   break
 fi
 
@@ -7779,7 +8029,7 @@ fi
 else
   ac_cv_prog_CPP=$CPP
 fi
-{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
 $as_echo "$CPP" >&6; }
 ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
@@ -7790,11 +8040,7 @@ do
   # <limits.h> exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifdef __STDC__
 # include <limits.h>
@@ -7803,87 +8049,40 @@ cat >>conftest.$ac_ext <<_ACEOF
 #endif
 		     Syntax error
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
 
+else
   # Broken: fails on valid input.
 continue
 fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
 
   # OK, works on sane cases.  Now check whether nonexistent headers
   # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <ac_nonexistent.h>
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
   # Broken: success on invalid input.
 continue
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
   # Passes both tests.
 ac_preproc_ok=:
 break
 fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
 
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  :
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+
 else
-  { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5 ; }
 fi
 
 ac_ext=c
@@ -7893,16 +8092,12 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
-{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
 $as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
+if test "${ac_cv_header_stdc+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 #include <stdarg.h>
@@ -7917,48 +8112,23 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_header_stdc=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_header_stdc=no
+  ac_cv_header_stdc=no
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <string.h>
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
+  $EGREP "memchr" >/dev/null 2>&1; then :
+
 else
   ac_cv_header_stdc=no
 fi
@@ -7968,18 +8138,14 @@ fi
 
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
+  $EGREP "free" >/dev/null 2>&1; then :
+
 else
   ac_cv_header_stdc=no
 fi
@@ -7989,14 +8155,10 @@ fi
 
 if test $ac_cv_header_stdc = yes; then
   # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   :
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <ctype.h>
 #include <stdlib.h>
@@ -8023,118 +8185,33 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  :
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
 
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+  ac_cv_header_stdc=no
 fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-
 fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
 $as_echo "$ac_cv_header_stdc" >&6; }
 if test $ac_cv_header_stdc = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
 
 # On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
 		  inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  eval "$as_ac_Header=yes"
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
   cat >>confdefs.h <<_ACEOF
 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
@@ -8144,62 +8221,13 @@ fi
 done
 
 
-
 for ac_header in dlfcn.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  eval "$as_ac_Header=yes"
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+do :
+  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_dlfcn_h" = x""yes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_DLFCN_H 1
 _ACEOF
 
 fi
@@ -8219,7 +8247,7 @@ done
 
 
             # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then
+if test "${enable_shared+set}" = set; then :
   enableval=$enable_shared; p=${PACKAGE-default}
     case $enableval in
     yes) enable_shared=yes ;;
@@ -8250,7 +8278,7 @@ fi
 
 
   # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then
+if test "${enable_static+set}" = set; then :
   enableval=$enable_static; p=${PACKAGE-default}
     case $enableval in
     yes) enable_static=yes ;;
@@ -8282,7 +8310,7 @@ fi
 
 
 # Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then
+if test "${with_pic+set}" = set; then :
   withval=$with_pic; pic_mode="$withval"
 else
   pic_mode=default
@@ -8298,7 +8326,7 @@ test -z "$pic_mode" && pic_mode=default
 
 
   # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
+if test "${enable_fast_install+set}" = set; then :
   enableval=$enable_fast_install; p=${PACKAGE-default}
     case $enableval in
     yes) enable_fast_install=yes ;;
@@ -8379,9 +8407,9 @@ if test -n "${ZSH_VERSION+set}" ; then
    setopt NO_GLOB_SUBST
 fi
 
-{ $as_echo "$as_me:$LINENO: checking for objdir" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
 $as_echo_n "checking for objdir... " >&6; }
-if test "${lt_cv_objdir+set}" = set; then
+if test "${lt_cv_objdir+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   rm -f .libs 2>/dev/null
@@ -8394,7 +8422,7 @@ else
 fi
 rmdir .libs 2>/dev/null
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
 $as_echo "$lt_cv_objdir" >&6; }
 objdir=$lt_cv_objdir
 
@@ -8487,9 +8515,9 @@ test -z "$MAGIC_CMD" && MAGIC_CMD=file
 case $deplibs_check_method in
 file_magic*)
   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MAGIC_CMD in
@@ -8540,10 +8568,10 @@ fi
 
 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -8553,9 +8581,9 @@ fi
 
 if test -z "$lt_cv_path_MAGIC_CMD"; then
   if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:$LINENO: checking for file" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
 $as_echo_n "checking for file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MAGIC_CMD in
@@ -8606,10 +8634,10 @@ fi
 
 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -8686,9 +8714,9 @@ lt_prog_compiler_no_builtin_flag=
 if test "$GCC" = yes; then
   lt_prog_compiler_no_builtin_flag=' -fno-builtin'
 
-  { $as_echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then
+if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_rtti_exceptions=no
@@ -8704,11 +8732,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:8707: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8735: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:8711: \$? = $ac_status" >&5
+   echo "$as_me:8739: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -8721,7 +8749,7 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
 if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
@@ -8741,7 +8769,7 @@ fi
 lt_prog_compiler_pic=
 lt_prog_compiler_static=
 
-{ $as_echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
 
   if test "$GCC" = yes; then
@@ -8873,7 +8901,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
       lt_prog_compiler_static='-non_shared'
       ;;
 
-    linux* | k*bsd*-gnu)
+    linux* | k*bsd*-gnu | kopensolaris*-gnu)
       case $cc_basename in
       # old Intel for x86_64 which still supported -KPIC.
       ecc*)
@@ -9013,7 +9041,7 @@ case $host_os in
     lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
     ;;
 esac
-{ $as_echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5
 $as_echo "$lt_prog_compiler_pic" >&6; }
 
 
@@ -9025,9 +9053,9 @@ $as_echo "$lt_prog_compiler_pic" >&6; }
 # Check to make sure the PIC flag actually works.
 #
 if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_pic_works=no
@@ -9043,11 +9071,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9046: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9074: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:9050: \$? = $ac_status" >&5
+   echo "$as_me:9078: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -9060,7 +9088,7 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
 
 if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
@@ -9084,9 +9112,9 @@ fi
 # Check to make sure the static flag actually works.
 #
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_static_works=no
@@ -9112,7 +9140,7 @@ else
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }
 
 if test x"$lt_cv_prog_compiler_static_works" = xyes; then
@@ -9127,9 +9155,9 @@ fi
 
 
 
-  { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_c_o=no
@@ -9148,11 +9176,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9151: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9179: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:9155: \$? = $ac_status" >&5
+   echo "$as_me:9183: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -9174,7 +9202,7 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 
 
@@ -9182,9 +9210,9 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
-  { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_c_o=no
@@ -9203,11 +9231,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9206: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9234: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:9210: \$? = $ac_status" >&5
+   echo "$as_me:9238: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -9229,7 +9257,7 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 
 
@@ -9238,7 +9266,7 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 hard_links="nottested"
 if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
   # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:$LINENO: checking if we can lock with hard links" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
 $as_echo_n "checking if we can lock with hard links... " >&6; }
   hard_links=yes
   $RM conftest*
@@ -9246,10 +9274,10 @@ $as_echo_n "checking if we can lock with hard links... " >&6; }
   touch conftest.a
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:$LINENO: result: $hard_links" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
 $as_echo "$hard_links" >&6; }
   if test "$hard_links" = no; then
-    { $as_echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
 $as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
@@ -9262,7 +9290,7 @@ fi
 
 
 
-  { $as_echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
 
   runpath_var=
@@ -9322,6 +9350,9 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
   openbsd*)
     with_gnu_ld=no
     ;;
+  linux* | k*bsd*-gnu)
+    link_all_deplibs=no
+    ;;
   esac
 
   ld_shlibs=yes
@@ -9343,6 +9374,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     fi
     supports_anon_versioning=no
     case `$LD -v 2>&1` in
+      *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
       *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
@@ -9434,7 +9466,7 @@ _LT_EOF
       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    gnu* | linux* | tpf* | k*bsd*-gnu)
+    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
       if test "$host_os" = linux-dietlibc; then
 	case $cc_basename in
@@ -9504,7 +9536,7 @@ _LT_EOF
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -9679,6 +9711,7 @@ _LT_EOF
 	if test "$aix_use_runtimelinking" = yes; then
 	  shared_flag="$shared_flag "'${wl}-G'
 	fi
+	link_all_deplibs=no
       else
 	# not using gcc
 	if test "$host_cpu" = ia64; then
@@ -9704,11 +9737,7 @@ _LT_EOF
 	allow_undefined_flag='-berok'
         # Determine the default libpath from the value encoded in an
         # empty executable.
-        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -9719,27 +9748,7 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
 
 lt_aix_libpath_sed='
     /Import File Strings/,/^$/ {
@@ -9753,16 +9762,9 @@ aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpat
 if test -z "$aix_libpath"; then
   aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 fi
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 
         hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
@@ -9775,11 +9777,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 	else
 	 # Determine the default libpath from the value encoded in an
 	 # empty executable.
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -9790,27 +9788,7 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
 
 lt_aix_libpath_sed='
     /Import File Strings/,/^$/ {
@@ -9824,16 +9802,9 @@ aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpat
 if test -z "$aix_libpath"; then
   aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 fi
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 
 	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
@@ -10045,42 +10016,16 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 	# implicitly export all symbols.
         save_LDFLAGS="$LDFLAGS"
         LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-        cat >conftest.$ac_ext <<_ACEOF
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 int foo(void) {}
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
 
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
         LDFLAGS="$save_LDFLAGS"
       else
 	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
@@ -10093,7 +10038,7 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
       link_all_deplibs=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -10336,7 +10281,7 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
     fi
   fi
 
-{ $as_echo "$as_me:$LINENO: result: $ld_shlibs" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
 $as_echo "$ld_shlibs" >&6; }
 test "$ld_shlibs" = no && can_build_shared=no
 
@@ -10373,16 +10318,16 @@ x|xyes)
       # Test whether the compiler implicitly links with -lc since on some
       # systems, -lgcc has to come before -lc. If gcc already passes -lc
       # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
       $RM conftest*
       echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
-      if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+      if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } 2>conftest.err; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } 2>conftest.err; then
         soname=conftest
         lib=conftest
         libobjs=conftest.$ac_objext
@@ -10396,11 +10341,11 @@ $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
         libname=conftest
         lt_save_allow_undefined_flag=$allow_undefined_flag
         allow_undefined_flag=
-        if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\"") >&5
+        if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
   (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
         then
 	  archive_cmds_need_lc=no
         else
@@ -10411,7 +10356,7 @@ $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
         cat conftest.err 1>&5
       fi
       $RM conftest*
-      { $as_echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5
 $as_echo "$archive_cmds_need_lc" >&6; }
       ;;
     esac
@@ -10575,7 +10520,7 @@ esac
 
 
 
-  { $as_echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
 $as_echo_n "checking dynamic linker characteristics... " >&6; }
 
 if test "$GCC" = yes; then
@@ -10983,7 +10928,7 @@ linux*oldld* | linux*aout* | linux*coff*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -10997,11 +10942,7 @@ linux* | k*bsd*-gnu)
   save_libdir=$libdir
   eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
        LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -11012,41 +10953,13 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
+if ac_fn_c_try_link "$LINENO"; then :
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
   shlibpath_overrides_runpath=yes
 fi
-
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
   LDFLAGS=$save_LDFLAGS
   libdir=$save_libdir
 
@@ -11070,6 +10983,18 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
+netbsdelf*-gnu)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='NetBSD ld.elf_so'
+  ;;
+
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -11258,7 +11183,7 @@ uts4*)
   dynamic_linker=no
   ;;
 esac
-{ $as_echo "$as_me:$LINENO: result: $dynamic_linker" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
 $as_echo "$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
@@ -11360,7 +11285,7 @@ fi
 
 
 
-  { $as_echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
@@ -11385,7 +11310,7 @@ else
   # directories.
   hardcode_action=unsupported
 fi
-{ $as_echo "$as_me:$LINENO: result: $hardcode_action" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
 $as_echo "$hardcode_action" >&6; }
 
 if test "$hardcode_action" = relink ||
@@ -11430,18 +11355,14 @@ else
 
   darwin*)
   # if libdl is installed we need to link against it
-    { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -11459,43 +11380,18 @@ return dlopen ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_dl_dlopen=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_dl_dlopen=no
+  ac_cv_lib_dl_dlopen=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
   lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
 else
 
@@ -11508,106 +11404,18 @@ fi
     ;;
 
   *)
-    { $as_echo "$as_me:$LINENO: checking for shl_load" >&5
-$as_echo_n "checking for shl_load... " >&6; }
-if test "${ac_cv_func_shl_load+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define shl_load to an innocuous variant, in case <limits.h> declares shl_load.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define shl_load innocuous_shl_load
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char shl_load (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef shl_load
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_shl_load || defined __stub___shl_load
-choke me
-#endif
-
-int
-main ()
-{
-return shl_load ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  ac_cv_func_shl_load=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_func_shl_load=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5
-$as_echo "$ac_cv_func_shl_load" >&6; }
-if test "x$ac_cv_func_shl_load" = x""yes; then
+    ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
+if test "x$ac_cv_func_shl_load" = x""yes; then :
   lt_cv_dlopen="shl_load"
 else
-  { $as_echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
 $as_echo_n "checking for shl_load in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_shl_load+set}" = set; then
+if test "${ac_cv_lib_dld_shl_load+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -11625,145 +11433,32 @@ return shl_load ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_dld_shl_load=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_dld_shl_load=no
+  ac_cv_lib_dld_shl_load=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = x""yes; then
+if test "x$ac_cv_lib_dld_shl_load" = x""yes; then :
   lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
-  { $as_echo "$as_me:$LINENO: checking for dlopen" >&5
-$as_echo_n "checking for dlopen... " >&6; }
-if test "${ac_cv_func_dlopen+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define dlopen to an innocuous variant, in case <limits.h> declares dlopen.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define dlopen innocuous_dlopen
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char dlopen (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef dlopen
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_dlopen || defined __stub___dlopen
-choke me
-#endif
-
-int
-main ()
-{
-return dlopen ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  ac_cv_func_dlopen=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_func_dlopen=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5
-$as_echo "$ac_cv_func_dlopen" >&6; }
-if test "x$ac_cv_func_dlopen" = x""yes; then
+  ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
+if test "x$ac_cv_func_dlopen" = x""yes; then :
   lt_cv_dlopen="dlopen"
 else
-  { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -11781,57 +11476,28 @@ return dlopen ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_dl_dlopen=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_dl_dlopen=no
+  ac_cv_lib_dl_dlopen=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
   lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
 else
-  { $as_echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
 $as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if test "${ac_cv_lib_svld_dlopen+set}" = set; then
+if test "${ac_cv_lib_svld_dlopen+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsvld  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -11849,57 +11515,28 @@ return dlopen ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_svld_dlopen=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_svld_dlopen=no
+  ac_cv_lib_svld_dlopen=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = x""yes; then
+if test "x$ac_cv_lib_svld_dlopen" = x""yes; then :
   lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
 else
-  { $as_echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
 $as_echo_n "checking for dld_link in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_dld_link+set}" = set; then
+if test "${ac_cv_lib_dld_dld_link+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -11917,43 +11554,18 @@ return dld_link ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_dld_dld_link=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_dld_dld_link=no
+  ac_cv_lib_dld_dld_link=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = x""yes; then
+if test "x$ac_cv_lib_dld_dld_link" = x""yes; then :
   lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
@@ -11992,9 +11604,9 @@ fi
     save_LIBS="$LIBS"
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
-    { $as_echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
 $as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self+set}" = set; then
+if test "${lt_cv_dlopen_self+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   	  if test "$cross_compiling" = yes; then :
@@ -12003,7 +11615,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12006 "configure"
+#line 11618 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12062,11 +11674,11 @@ int main ()
   return status;
 }
 _LT_EOF
-  if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -12083,14 +11695,14 @@ rm -fr conftest*
 
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
 $as_echo "$lt_cv_dlopen_self" >&6; }
 
     if test "x$lt_cv_dlopen_self" = xyes; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self_static+set}" = set; then
+if test "${lt_cv_dlopen_self_static+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   	  if test "$cross_compiling" = yes; then :
@@ -12099,7 +11711,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12102 "configure"
+#line 11714 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12158,11 +11770,11 @@ int main ()
   return status;
 }
 _LT_EOF
-  if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -12179,7 +11791,7 @@ rm -fr conftest*
 
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
 $as_echo "$lt_cv_dlopen_self_static" >&6; }
     fi
 
@@ -12218,12 +11830,12 @@ fi
 
 striplib=
 old_striplib=
-{ $as_echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
 $as_echo_n "checking whether stripping libraries is possible... " >&6; }
 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:$LINENO: result: yes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 else
 # FIXME - insert some real tests, host_os isn't really good enough
@@ -12232,15 +11844,15 @@ else
     if test -n "$STRIP" ; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
-      { $as_echo "$as_me:$LINENO: result: yes" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
     else
-      { $as_echo "$as_me:$LINENO: result: no" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
     fi
     ;;
   *)
-    { $as_echo "$as_me:$LINENO: result: no" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
     ;;
   esac
@@ -12258,12 +11870,12 @@ fi
 
 
   # Report which library types will actually be built
-  { $as_echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
 $as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:$LINENO: result: $can_build_shared" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
 $as_echo "$can_build_shared" >&6; }
 
-  { $as_echo "$as_me:$LINENO: checking whether to build shared libraries" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
 $as_echo_n "checking whether to build shared libraries... " >&6; }
   test "$can_build_shared" = "no" && enable_shared=no
 
@@ -12284,14 +11896,14 @@ $as_echo_n "checking whether to build shared libraries... " >&6; }
     fi
     ;;
   esac
-  { $as_echo "$as_me:$LINENO: result: $enable_shared" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
 $as_echo "$enable_shared" >&6; }
 
-  { $as_echo "$as_me:$LINENO: checking whether to build static libraries" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
 $as_echo_n "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
   test "$enable_shared" = yes || enable_static=yes
-  { $as_echo "$as_me:$LINENO: result: $enable_static" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
 $as_echo "$enable_static" >&6; }
 
 
@@ -12326,98 +11938,6 @@ CC="$lt_save_CC"
 # Only expand once:
 
 
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
-  ./ | .// | /cC/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # AIX install.  It has an incompatible calling convention.
-	    :
-	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # program-specific install script used by HP pwplus--don't use.
-	    :
-	  else
-	    rm -rf conftest.one conftest.two conftest.dir
-	    echo one > conftest.one
-	    echo two > conftest.two
-	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-	      test -s conftest.one && test -s conftest.two &&
-	      test -s conftest.dir/conftest.one &&
-	      test -s conftest.dir/conftest.two
-	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-	      break 3
-	    fi
-	  fi
-	fi
-      done
-    done
-    ;;
-esac
-
-done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
 DISTCHECK_CONFIGURE_FLAGS="--disable-docs --enable-mtp --enable-daap --enable-podcast --enable-user-help --enable-release"
@@ -12476,17 +11996,13 @@ DISPLAY_VERSION="1.9.0"
 
 
 
-	{ $as_echo "$as_me:$LINENO: checking for library containing strerror" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5
 $as_echo_n "checking for library containing strerror... " >&6; }
-if test "${ac_cv_search_strerror+set}" = set; then
+if test "${ac_cv_search_strerror+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -12511,54 +12027,27 @@ for ac_lib in '' cposix; do
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+  if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_search_strerror=$ac_res
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext
-  if test "${ac_cv_search_strerror+set}" = set; then
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if test "${ac_cv_search_strerror+set}" = set; then :
   break
 fi
 done
-if test "${ac_cv_search_strerror+set}" = set; then
-  :
+if test "${ac_cv_search_strerror+set}" = set; then :
+
 else
   ac_cv_search_strerror=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5
 $as_echo "$ac_cv_search_strerror" >&6; }
 ac_res=$ac_cv_search_strerror
-if test "$ac_res" != no; then
+if test "$ac_res" != no; then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
 fi
@@ -12571,9 +12060,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -12584,24 +12073,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12611,9 +12100,9 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_CC"; then
@@ -12624,24 +12113,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
 $as_echo "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12650,7 +12139,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -12664,9 +12153,9 @@ if test -z "$CC"; then
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -12677,24 +12166,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12704,9 +12193,9 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -12718,18 +12207,18 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 if test $ac_prog_rejected = yes; then
@@ -12748,10 +12237,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12763,9 +12252,9 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if test "${ac_cv_prog_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$CC"; then
@@ -12776,24 +12265,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:$LINENO: result: $CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
 $as_echo "$CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12807,9 +12296,9 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_CC"; then
@@ -12820,24 +12309,24 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
 $as_echo "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -12850,7 +12339,7 @@ done
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -12861,62 +12350,42 @@ fi
 fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+as_fn_error $? "no acceptable C compiler found in \$PATH
+See \`config.log' for more details" "$LINENO" 5 ; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-{ (ac_try="$ac_compiler --version >&5"
+for ac_option in --version -v -V -qversion; do
+  { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler --version >&5") 2>&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler -v >&5") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compiler -V >&5") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
+  if test -s conftest.err; then
+    sed '10a\
+... rest of stderr output deleted ...
+         10q' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+  fi
+  rm -f conftest.er1 conftest.err
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+done
 
-{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
+if test "${ac_cv_c_compiler_gnu+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -12930,37 +12399,16 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_compiler_gnu=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_compiler_gnu=no
+  ac_compiler_gnu=no
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
 if test $ac_compiler_gnu = yes; then
   GCC=yes
@@ -12969,20 +12417,16 @@ else
 fi
 ac_test_CFLAGS=${CFLAGS+set}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
 $as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
+if test "${ac_cv_prog_cc_g+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
    CFLAGS="-g"
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -12993,35 +12437,11 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_g=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	CFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  CFLAGS=""
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -13032,36 +12452,12 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  :
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_compile "$LINENO"; then :
 
-	ac_c_werror_flag=$ac_save_c_werror_flag
+else
+  ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -13072,42 +12468,17 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_g=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
 $as_echo "$ac_cv_prog_cc_g" >&6; }
 if test "$ac_test_CFLAGS" = set; then
   CFLAGS=$ac_save_CFLAGS
@@ -13124,18 +12495,14 @@ else
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
+if test "${ac_cv_prog_cc_c89+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_cv_prog_cc_c89=no
 ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
@@ -13192,32 +12559,9 @@ for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
 	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+  if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_prog_cc_c89=$ac_arg
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
@@ -13228,17 +12572,19 @@ fi
 # AC_CACHE_VAL
 case "x$ac_cv_prog_cc_c89" in
   x)
-    { $as_echo "$as_me:$LINENO: result: none needed" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
 $as_echo "none needed" >&6; } ;;
   xno)
-    { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
 $as_echo "unsupported" >&6; } ;;
   *)
     CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
 esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+fi
 
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -13248,9 +12594,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 depcc="$CC"   am_compiler_list=
 
-{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
 $as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
@@ -13276,6 +12622,11 @@ else
   if test "$am_compiler_list" = ""; then
      am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
   fi
+  am__universal=false
+  case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac
+
   for depmode in $am_compiler_list; do
     # Setup a source with many dependencies, because some compilers
     # like to wrap large dependency lists on column 80 (with \), and
@@ -13293,7 +12644,17 @@ else
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs
+    am__obj=sub/conftest.${OBJEXT-o}
+    am__minus_obj="-o $am__obj"
     case $depmode in
+    gcc)
+      # This depmode causes a compiler race in universal mode.
+      test "$am__universal" = false || continue
+      ;;
     nosideeffect)
       # after this tag, mechanisms are not by side-effect, so they'll
       # only be used when explicitly requested
@@ -13303,19 +12664,23 @@ else
 	break
       fi
       ;;
+    msvisualcpp | msvcmsys)
+      # This compiler won't grok `-c -o', but also, the minuso test has
+      # not run yet.  These depmodes are late enough in the game, and
+      # so weak that their functioning should not be impacted.
+      am__obj=conftest.${OBJEXT-o}
+      am__minus_obj=
+      ;;
     none) break ;;
     esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       source=sub/conftest.c object=$am__obj \
        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
          >/dev/null 2>conftest.err &&
        grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
        grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
       # or remarks (even with -Werror).  So we grep stderr for any message
@@ -13339,7 +12704,7 @@ else
 fi
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
@@ -13355,16 +12720,12 @@ fi
 
 
 
-	{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
 $as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
+if test "${ac_cv_header_stdc+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 #include <stdarg.h>
@@ -13379,48 +12740,23 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_header_stdc=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_header_stdc=no
+  ac_cv_header_stdc=no
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <string.h>
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
+  $EGREP "memchr" >/dev/null 2>&1; then :
+
 else
   ac_cv_header_stdc=no
 fi
@@ -13430,18 +12766,14 @@ fi
 
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
+  $EGREP "free" >/dev/null 2>&1; then :
+
 else
   ac_cv_header_stdc=no
 fi
@@ -13451,14 +12783,10 @@ fi
 
 if test $ac_cv_header_stdc = yes; then
   # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   :
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <ctype.h>
 #include <stdlib.h>
@@ -13485,57 +12813,28 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  :
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
 
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+  ac_cv_header_stdc=no
 fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-
 fi
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
 $as_echo "$ac_cv_header_stdc" >&6; }
 if test $ac_cv_header_stdc = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
 
 
 	# Check whether --enable-glibtest was given.
-if test "${enable_glibtest+set}" = set; then
+if test "${enable_glibtest+set}" = set; then :
   enableval=$enable_glibtest;
 else
   enable_glibtest=yes
@@ -13566,13 +12865,17 @@ fi
 
 
 
+
+
+
+
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
+if test "${ac_cv_path_PKG_CONFIG+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $PKG_CONFIG in
@@ -13585,14 +12888,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -13600,10 +12903,10 @@ esac
 fi
 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
 if test -n "$PKG_CONFIG"; then
-  { $as_echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
 $as_echo "$PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -13613,9 +12916,9 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
   ac_pt_PKG_CONFIG=$PKG_CONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
+if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $ac_pt_PKG_CONFIG in
@@ -13628,14 +12931,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   ;;
@@ -13643,10 +12946,10 @@ esac
 fi
 ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
 if test -n "$ac_pt_PKG_CONFIG"; then
-  { $as_echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
 $as_echo "$ac_pt_PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -13655,7 +12958,7 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
@@ -13668,17 +12971,16 @@ fi
 fi
 if test -n "$PKG_CONFIG"; then
 	_pkg_min_version=0.16
-	{ $as_echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
 	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-		{ $as_echo "$as_me:$LINENO: result: yes" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	else
-		{ $as_echo "$as_me:$LINENO: result: no" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 		PKG_CONFIG=""
 	fi
-
 fi
 
   no_glib=""
@@ -13689,7 +12991,7 @@ fi
   fi
 
   min_glib_version=2.0.0
-  { $as_echo "$as_me:$LINENO: checking for GLIB - version >= $min_glib_version" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB - version >= $min_glib_version" >&5
 $as_echo_n "checking for GLIB - version >= $min_glib_version... " >&6; }
 
   if test x$PKG_CONFIG != xno ; then
@@ -13725,14 +13027,10 @@ $as_echo_n "checking for GLIB - version >= $min_glib_version... " >&6; }
       CFLAGS="$CFLAGS $GLIB_CFLAGS"
       LIBS="$GLIB_LIBS $LIBS"
       rm -f conf.glibtest
-      if test "$cross_compiling" = yes; then
+      if test "$cross_compiling" = yes; then :
   echo $ac_n "cross compiling; assumed OK... $ac_c"
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #include <glib.h>
@@ -13744,9 +13042,8 @@ main ()
 {
   int major, minor, micro;
   char *tmp_version;
-  int ignored;
 
-  ignored = system ("touch conf.glibtest");
+  fclose (fopen ("conf.glibtest", "w"));
 
   /* HP/UX 9 (%@#!) writes to sscanf strings */
   tmp_version = g_strdup("$min_glib_version");
@@ -13808,52 +13105,25 @@ main ()
 }
 
 _ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  :
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
 
-( exit $ac_status )
-no_glib=yes
+else
+  no_glib=yes
 fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-
        CFLAGS="$ac_save_CFLAGS"
        LIBS="$ac_save_LIBS"
      fi
   fi
   if test "x$no_glib" = x ; then
-     { $as_echo "$as_me:$LINENO: result: yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&5
+     { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&5
 $as_echo "yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&6; }
      :
   else
-     { $as_echo "$as_me:$LINENO: result: no" >&5
+     { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
      if test "$PKG_CONFIG" = "no" ; then
        echo "*** A new enough version of pkg-config was not found."
@@ -13867,11 +13137,7 @@ $as_echo "no" >&6; }
           ac_save_LIBS="$LIBS"
           CFLAGS="$CFLAGS $GLIB_CFLAGS"
           LIBS="$LIBS $GLIB_LIBS"
-          cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #include <glib.h>
@@ -13885,27 +13151,7 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
    echo "*** The test program compiled, but did not run. This usually means"
           echo "*** that the run-time linker is not finding GLIB or finding the wrong"
           echo "*** version of GLIB. If it is not finding GLIB, you'll need to set your"
@@ -13916,16 +13162,11 @@ $as_echo "$ac_try_echo") >&5
           echo "*** If you have an old version installed, it is best to remove it, although"
           echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	 echo "*** The test program failed to compile or link. See the file config.log for the"
+   echo "*** The test program failed to compile or link. See the file config.log for the"
           echo "*** exact error that occured. This usually means GLIB is incorrectly installed."
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
           CFLAGS="$ac_save_CFLAGS"
           LIBS="$ac_save_LIBS"
        fi
@@ -13954,18 +13195,18 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
 	if test x$GTK_TARGET = xx11; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GDK_X11" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDK_X11" >&5
 $as_echo_n "checking for GDK_X11... " >&6; }
 
 if test -n "$GDK_X11_CFLAGS"; then
     pkg_cv_GDK_X11_CFLAGS="$GDK_X11_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdk-x11-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-x11-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdk-x11-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDK_X11_CFLAGS=`$PKG_CONFIG --cflags "gdk-x11-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -13977,11 +13218,11 @@ if test -n "$GDK_X11_LIBS"; then
     pkg_cv_GDK_X11_LIBS="$GDK_X11_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdk-x11-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-x11-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdk-x11-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDK_X11_LIBS=`$PKG_CONFIG --libs "gdk-x11-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -13993,6 +13234,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14007,18 +13250,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GDK_X11_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gdk-x11-2.0 >= 2.8) were not met:
-
-$GDK_X11_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GDK_X11_CFLAGS
-and GDK_X11_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gdk-x11-2.0 >= 2.8) were not met:
+	as_fn_error $? "Package requirements (gdk-x11-2.0 >= 2.8) were not met:
 
 $GDK_X11_PKG_ERRORS
 
@@ -14027,13 +13259,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GDK_X11_CFLAGS
 and GDK_X11_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14042,24 +13274,13 @@ and GDK_X11_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GDK_X11_CFLAGS
-and GDK_X11_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GDK_X11_CFLAGS=$pkg_cv_GDK_X11_CFLAGS
 	GDK_X11_LIBS=$pkg_cv_GDK_X11_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -14073,18 +13294,18 @@ fi
 	elif test x$GTK_TARGET = xquartz; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GDK_QUARTZ" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDK_QUARTZ" >&5
 $as_echo_n "checking for GDK_QUARTZ... " >&6; }
 
 if test -n "$GDK_QUARTZ_CFLAGS"; then
     pkg_cv_GDK_QUARTZ_CFLAGS="$GDK_QUARTZ_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdk-quartz-2.0 >= 2.14\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-quartz-2.0 >= 2.14\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdk-quartz-2.0 >= 2.14") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDK_QUARTZ_CFLAGS=`$PKG_CONFIG --cflags "gdk-quartz-2.0 >= 2.14" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14096,11 +13317,11 @@ if test -n "$GDK_QUARTZ_LIBS"; then
     pkg_cv_GDK_QUARTZ_LIBS="$GDK_QUARTZ_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdk-quartz-2.0 >= 2.14\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-quartz-2.0 >= 2.14\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdk-quartz-2.0 >= 2.14") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDK_QUARTZ_LIBS=`$PKG_CONFIG --libs "gdk-quartz-2.0 >= 2.14" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14112,6 +13333,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14126,18 +13349,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GDK_QUARTZ_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gdk-quartz-2.0 >= 2.14) were not met:
-
-$GDK_QUARTZ_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GDK_QUARTZ_CFLAGS
-and GDK_QUARTZ_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gdk-quartz-2.0 >= 2.14) were not met:
+	as_fn_error $? "Package requirements (gdk-quartz-2.0 >= 2.14) were not met:
 
 $GDK_QUARTZ_PKG_ERRORS
 
@@ -14146,13 +13358,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GDK_QUARTZ_CFLAGS
 and GDK_QUARTZ_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14161,24 +13373,13 @@ and GDK_QUARTZ_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GDK_QUARTZ_CFLAGS
-and GDK_QUARTZ_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GDK_QUARTZ_CFLAGS=$pkg_cv_GDK_QUARTZ_CFLAGS
 	GDK_QUARTZ_LIBS=$pkg_cv_GDK_QUARTZ_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -14192,18 +13393,18 @@ fi
 	else
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GTK" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
 $as_echo_n "checking for GTK... " >&6; }
 
 if test -n "$GTK_CFLAGS"; then
     pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14215,11 +13416,11 @@ if test -n "$GTK_LIBS"; then
     pkg_cv_GTK_LIBS="$GTK_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14231,6 +13432,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14245,7 +13448,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GTK_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gtk+-2.0 >= 2.8) were not met:
+	as_fn_error $? "Package requirements (gtk+-2.0 >= 2.8) were not met:
 
 $GTK_PKG_ERRORS
 
@@ -14254,24 +13457,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GTK_CFLAGS
 and GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gtk+-2.0 >= 2.8) were not met:
-
-$GTK_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14280,29 +13472,18 @@ and GTK_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
 	GTK_LIBS=$pkg_cv_GTK_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 	fi
 
 	# Check whether --enable-clutter was given.
-if test "${enable_clutter+set}" = set; then
+if test "${enable_clutter+set}" = set; then :
   enableval=$enable_clutter;
 else
   enable_clutter="no"
@@ -14312,18 +13493,18 @@ fi
 	if test "x$enable_clutter" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for CLUTTER" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CLUTTER" >&5
 $as_echo_n "checking for CLUTTER... " >&6; }
 
 if test -n "$CLUTTER_CFLAGS"; then
     pkg_cv_CLUTTER_CFLAGS="$CLUTTER_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"clutter-1.0 >= 1.0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"clutter-1.0 >= 1.0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "clutter-1.0 >= 1.0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_CLUTTER_CFLAGS=`$PKG_CONFIG --cflags "clutter-1.0 >= 1.0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14335,11 +13516,11 @@ if test -n "$CLUTTER_LIBS"; then
     pkg_cv_CLUTTER_LIBS="$CLUTTER_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"clutter-1.0 >= 1.0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"clutter-1.0 >= 1.0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "clutter-1.0 >= 1.0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_CLUTTER_LIBS=`$PKG_CONFIG --libs "clutter-1.0 >= 1.0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14351,6 +13532,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14365,7 +13548,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$CLUTTER_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (clutter-1.0 >= 1.0.1) were not met:
+	as_fn_error $? "Package requirements (clutter-1.0 >= 1.0.1) were not met:
 
 $CLUTTER_PKG_ERRORS
 
@@ -14374,34 +13557,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables CLUTTER_CFLAGS
 and CLUTTER_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (clutter-1.0 >= 1.0.1) were not met:
-
-$CLUTTER_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables CLUTTER_CFLAGS
-and CLUTTER_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables CLUTTER_CFLAGS
-and CLUTTER_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14410,12 +13572,11 @@ and CLUTTER_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	CLUTTER_CFLAGS=$pkg_cv_CLUTTER_CFLAGS
 	CLUTTER_LIBS=$pkg_cv_CLUTTER_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_clutter=yes
 fi
@@ -14428,9 +13589,7 @@ fi
 
 
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_CLUTTER 1
-_ACEOF
+$as_echo "#define HAVE_CLUTTER 1" >>confdefs.h
 
 	fi
 
@@ -14469,19 +13628,19 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GST" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST" >&5
 $as_echo_n "checking for GST... " >&6; }
 
 if test -n "$GST_CFLAGS"; then
     pkg_cv_GST_CFLAGS="$GST_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= \$GSTREAMER_REQUIRED_VERSION
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-controller-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-dataprotocol-0.10 >= \$GSTREAMER_REQUIRED_VERSION
-		gstreamer-fft-0.10 >= \$GSTREAMER_REQUIRED_VERSION\"") >&5
+		gstreamer-fft-0.10 >= \$GSTREAMER_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
@@ -14489,8 +13648,8 @@ if test -n "$GST_CFLAGS"; then
 		gstreamer-dataprotocol-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-fft-0.10 >= $GSTREAMER_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
@@ -14507,12 +13666,12 @@ if test -n "$GST_LIBS"; then
     pkg_cv_GST_LIBS="$GST_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= \$GSTREAMER_REQUIRED_VERSION
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-controller-0.10 >= \$GSTREAMER_REQUIRED_VERSION
 		gstreamer-dataprotocol-0.10 >= \$GSTREAMER_REQUIRED_VERSION
-		gstreamer-fft-0.10 >= \$GSTREAMER_REQUIRED_VERSION\"") >&5
+		gstreamer-fft-0.10 >= \$GSTREAMER_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
@@ -14520,8 +13679,8 @@ if test -n "$GST_LIBS"; then
 		gstreamer-dataprotocol-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-fft-0.10 >= $GSTREAMER_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_LIBS=`$PKG_CONFIG --libs "gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
@@ -14538,6 +13697,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14562,7 +13723,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GST_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
+	as_fn_error $? "Package requirements (gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
 		gstreamer-controller-0.10 >= $GSTREAMER_REQUIRED_VERSION
@@ -14576,29 +13737,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GST_CFLAGS
 and GST_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION
-		gstreamer-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
-		gstreamer-plugins-base-0.10 >= $GSTREAMER_REQUIRED_VERSION
-		gstreamer-controller-0.10 >= $GSTREAMER_REQUIRED_VERSION
-		gstreamer-dataprotocol-0.10 >= $GSTREAMER_REQUIRED_VERSION
-		gstreamer-fft-0.10 >= $GSTREAMER_REQUIRED_VERSION) were not met:
-
-$GST_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GST_CFLAGS
-and GST_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14607,24 +13752,13 @@ and GST_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GST_CFLAGS
-and GST_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GST_CFLAGS=$pkg_cv_GST_CFLAGS
 	GST_LIBS=$pkg_cv_GST_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 	GST_LIBS="$GST_LIBS -lgstvideo-0.10 -lgstinterfaces-0.10 -lgstcdda-0.10 -lgstpbutils-0.10"
@@ -14633,7 +13767,7 @@ fi
 
 
 		# Check whether --enable-builtin-equalizer was given.
-if test "${enable_builtin_equalizer+set}" = set; then
+if test "${enable_builtin_equalizer+set}" = set; then :
   enableval=$enable_builtin_equalizer;
 else
   enable_builtin_equalizer="yes"
@@ -14651,7 +13785,7 @@ fi
 
 
 	# Check whether --enable-gst_sharp was given.
-if test "${enable_gst_sharp+set}" = set; then
+if test "${enable_gst_sharp+set}" = set; then :
   enableval=$enable_gst_sharp;
 else
   enable_gst_sharp="no"
@@ -14661,18 +13795,18 @@ fi
 	if test "x$enable_gst_sharp" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GST_SHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST_SHARP" >&5
 $as_echo_n "checking for GST_SHARP... " >&6; }
 
 if test -n "$GST_SHARP_CFLAGS"; then
     pkg_cv_GST_SHARP_CFLAGS="$GST_SHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-sharp-0.10\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-sharp-0.10\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-sharp-0.10") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_SHARP_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-sharp-0.10" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14684,11 +13818,11 @@ if test -n "$GST_SHARP_LIBS"; then
     pkg_cv_GST_SHARP_LIBS="$GST_SHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-sharp-0.10\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-sharp-0.10\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-sharp-0.10") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_SHARP_LIBS=`$PKG_CONFIG --libs "gstreamer-sharp-0.10" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14700,6 +13834,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14714,7 +13850,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GST_SHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gstreamer-sharp-0.10) were not met:
+	as_fn_error $? "Package requirements (gstreamer-sharp-0.10) were not met:
 
 $GST_SHARP_PKG_ERRORS
 
@@ -14723,34 +13859,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GST_SHARP_CFLAGS
 and GST_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gstreamer-sharp-0.10) were not met:
-
-$GST_SHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GST_SHARP_CFLAGS
-and GST_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GST_SHARP_CFLAGS
-and GST_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14759,14 +13874,13 @@ and GST_SHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GST_SHARP_CFLAGS=$pkg_cv_GST_SHARP_CFLAGS
 	GST_SHARP_LIBS=$pkg_cv_GST_SHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 		 if true; then
@@ -14795,18 +13909,18 @@ fi
 	if test x$(pkg-config --variable=target gtk+-2.0) = xx11; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for BNPX_GTK" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BNPX_GTK" >&5
 $as_echo_n "checking for BNPX_GTK... " >&6; }
 
 if test -n "$BNPX_GTK_CFLAGS"; then
     pkg_cv_BNPX_GTK_CFLAGS="$BNPX_GTK_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_BNPX_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14818,11 +13932,11 @@ if test -n "$BNPX_GTK_LIBS"; then
     pkg_cv_BNPX_GTK_LIBS="$BNPX_GTK_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_BNPX_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -14834,6 +13948,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -14848,18 +13964,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$BNPX_GTK_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8) were not met:
-
-$BNPX_GTK_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables BNPX_GTK_CFLAGS
-and BNPX_GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8) were not met:
+	as_fn_error $? "Package requirements (gtk+-2.0 >= 2.8 gdk-x11-2.0 >= 2.8) were not met:
 
 $BNPX_GTK_PKG_ERRORS
 
@@ -14868,13 +13973,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables BNPX_GTK_CFLAGS
 and BNPX_GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -14883,32 +13988,21 @@ and BNPX_GTK_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables BNPX_GTK_CFLAGS
-and BNPX_GTK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	BNPX_GTK_CFLAGS=$pkg_cv_BNPX_GTK_CFLAGS
 	BNPX_GTK_LIBS=$pkg_cv_BNPX_GTK_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
-		{ $as_echo "$as_me:$LINENO: checking for X" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5
 $as_echo_n "checking for X... " >&6; }
 
 
 # Check whether --with-x was given.
-if test "${with_x+set}" = set; then
+if test "${with_x+set}" = set; then :
   withval=$with_x;
 fi
 
@@ -14918,10 +14012,8 @@ if test "x$with_x" = xno; then
   have_x=disabled
 else
   case $x_includes,$x_libraries in #(
-    *\'*) { { $as_echo "$as_me:$LINENO: error: cannot use X directory names containing '" >&5
-$as_echo "$as_me: error: cannot use X directory names containing '" >&2;}
-   { (exit 1); exit 1; }; };; #(
-    *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then
+    *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5 ;; #(
+    *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   # One or both of the vars are not set, and there is no cached value.
@@ -14938,7 +14030,7 @@ libdir:
 	@echo libdir='${LIBDIR}'
 _ACEOF
   if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
-    # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+    # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
     for ac_var in incroot usrlibdir libdir; do
       eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
     done
@@ -14969,21 +14061,25 @@ fi
 # Check X11 before X11Rn because it is often a symlink to the current release.
 ac_x_header_dirs='
 /usr/X11/include
+/usr/X11R7/include
 /usr/X11R6/include
 /usr/X11R5/include
 /usr/X11R4/include
 
 /usr/include/X11
+/usr/include/X11R7
 /usr/include/X11R6
 /usr/include/X11R5
 /usr/include/X11R4
 
 /usr/local/X11/include
+/usr/local/X11R7/include
 /usr/local/X11R6/include
 /usr/local/X11R5/include
 /usr/local/X11R4/include
 
 /usr/local/include/X11
+/usr/local/include/X11R7
 /usr/local/include/X11R6
 /usr/local/include/X11R5
 /usr/local/include/X11R4
@@ -15005,37 +14101,14 @@ ac_x_header_dirs='
 if test "$ac_x_includes" = no; then
   # Guess where to find include files, by looking for Xlib.h.
   # First, try using that file with no special directory specified.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <X11/Xlib.h>
 _ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
   # We can compile using X headers with no special include directory.
 ac_x_includes=
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
   for ac_dir in $ac_x_header_dirs; do
   if test -r "$ac_dir/X11/Xlib.h"; then
     ac_x_includes=$ac_dir
@@ -15043,8 +14116,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
   fi
 done
 fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
 fi # $ac_x_includes = no
 
 if test "$ac_x_libraries" = no; then
@@ -15053,11 +14125,7 @@ if test "$ac_x_libraries" = no; then
   # Don't add to $LIBS permanently.
   ac_save_LIBS=$LIBS
   LIBS="-lX11 $LIBS"
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <X11/Xlib.h>
 int
@@ -15068,35 +14136,12 @@ XrmInitialize ()
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   LIBS=$ac_save_LIBS
 # We can link X programs with no special library path.
 ac_x_libraries=
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	LIBS=$ac_save_LIBS
+  LIBS=$ac_save_LIBS
 for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
 do
   # Don't even attempt the hair of trying to link an X program!
@@ -15108,10 +14153,8 @@ do
   done
 done
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 fi # $ac_x_libraries = no
 
 case $ac_x_includes,$ac_x_libraries in #(
@@ -15132,7 +14175,7 @@ fi
 fi # $with_x != no
 
 if test "$have_x" != yes; then
-  { $as_echo "$as_me:$LINENO: result: $have_x" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5
 $as_echo "$have_x" >&6; }
   no_x=yes
 else
@@ -15143,7 +14186,7 @@ else
   ac_cv_have_x="have_x=yes\
 	ac_x_includes='$x_includes'\
 	ac_x_libraries='$x_libraries'"
-  { $as_echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5
 $as_echo "libraries $x_libraries, headers $x_includes" >&6; }
 fi
 
@@ -15161,18 +14204,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for XVIDMODE" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XVIDMODE" >&5
 $as_echo_n "checking for XVIDMODE... " >&6; }
 
 if test -n "$XVIDMODE_CFLAGS"; then
     pkg_cv_XVIDMODE_CFLAGS="$XVIDMODE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xrandr >= 1.1.1 xxf86vm >= 1.0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xrandr >= 1.1.1 xxf86vm >= 1.0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "xrandr >= 1.1.1 xxf86vm >= 1.0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_XVIDMODE_CFLAGS=`$PKG_CONFIG --cflags "xrandr >= 1.1.1 xxf86vm >= 1.0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15184,11 +14227,11 @@ if test -n "$XVIDMODE_LIBS"; then
     pkg_cv_XVIDMODE_LIBS="$XVIDMODE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xrandr >= 1.1.1 xxf86vm >= 1.0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xrandr >= 1.1.1 xxf86vm >= 1.0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "xrandr >= 1.1.1 xxf86vm >= 1.0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_XVIDMODE_LIBS=`$PKG_CONFIG --libs "xrandr >= 1.1.1 xxf86vm >= 1.0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15200,6 +14243,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15214,24 +14259,22 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$XVIDMODE_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                have_xvidmode=no
+	have_xvidmode=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	have_xvidmode=no
 else
 	XVIDMODE_CFLAGS=$pkg_cv_XVIDMODE_CFLAGS
 	XVIDMODE_LIBS=$pkg_cv_XVIDMODE_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	have_xvidmode=yes
 fi
 
 		if test x$have_xvidmode = xyes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XVIDMODE /**/
-_ACEOF
+$as_echo "#define HAVE_XVIDMODE /**/" >>confdefs.h
 
 		fi
 
@@ -15251,7 +14294,7 @@ fi
 
 
 	# Check whether --enable-user-help was given.
-if test "${enable_user_help+set}" = set; then
+if test "${enable_user_help+set}" = set; then :
   enableval=$enable_user_help;
 else
   enable_user_help=auto
@@ -15261,18 +14304,18 @@ fi
 	if test "x$enable_user_help" = "xauto"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GNOME_DOC_UTILS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNOME_DOC_UTILS" >&5
 $as_echo_n "checking for GNOME_DOC_UTILS... " >&6; }
 
 if test -n "$GNOME_DOC_UTILS_CFLAGS"; then
     pkg_cv_GNOME_DOC_UTILS_CFLAGS="$GNOME_DOC_UTILS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-doc-utils") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_DOC_UTILS_CFLAGS=`$PKG_CONFIG --cflags "gnome-doc-utils" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15284,11 +14327,11 @@ if test -n "$GNOME_DOC_UTILS_LIBS"; then
     pkg_cv_GNOME_DOC_UTILS_LIBS="$GNOME_DOC_UTILS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-doc-utils") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_DOC_UTILS_LIBS=`$PKG_CONFIG --libs "gnome-doc-utils" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15300,6 +14343,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15314,33 +14359,33 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GNOME_DOC_UTILS_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_user_help=no
+	enable_user_help=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_user_help=no
 else
 	GNOME_DOC_UTILS_CFLAGS=$pkg_cv_GNOME_DOC_UTILS_CFLAGS
 	GNOME_DOC_UTILS_LIBS=$pkg_cv_GNOME_DOC_UTILS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_user_help=yes
 fi
 	elif test "x$enable_user_help" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GNOME_DOC_UTILS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNOME_DOC_UTILS" >&5
 $as_echo_n "checking for GNOME_DOC_UTILS... " >&6; }
 
 if test -n "$GNOME_DOC_UTILS_CFLAGS"; then
     pkg_cv_GNOME_DOC_UTILS_CFLAGS="$GNOME_DOC_UTILS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-doc-utils") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_DOC_UTILS_CFLAGS=`$PKG_CONFIG --cflags "gnome-doc-utils" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15352,11 +14397,11 @@ if test -n "$GNOME_DOC_UTILS_LIBS"; then
     pkg_cv_GNOME_DOC_UTILS_LIBS="$GNOME_DOC_UTILS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-doc-utils") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_DOC_UTILS_LIBS=`$PKG_CONFIG --libs "gnome-doc-utils" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15368,6 +14413,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15382,18 +14429,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GNOME_DOC_UTILS_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gnome-doc-utils) were not met:
-
-$GNOME_DOC_UTILS_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GNOME_DOC_UTILS_CFLAGS
-and GNOME_DOC_UTILS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gnome-doc-utils) were not met:
+	as_fn_error $? "Package requirements (gnome-doc-utils) were not met:
 
 $GNOME_DOC_UTILS_PKG_ERRORS
 
@@ -15402,13 +14438,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GNOME_DOC_UTILS_CFLAGS
 and GNOME_DOC_UTILS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -15417,24 +14453,13 @@ and GNOME_DOC_UTILS_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GNOME_DOC_UTILS_CFLAGS
-and GNOME_DOC_UTILS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GNOME_DOC_UTILS_CFLAGS=$pkg_cv_GNOME_DOC_UTILS_CFLAGS
 	GNOME_DOC_UTILS_LIBS=$pkg_cv_GNOME_DOC_UTILS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 	fi
 
@@ -15452,25 +14477,25 @@ fi
 
 gdu_cv_version_required=0.17.3
 
-{ $as_echo "$as_me:$LINENO: checking gnome-doc-utils >= $gdu_cv_version_required" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking gnome-doc-utils >= $gdu_cv_version_required" >&5
 $as_echo_n "checking gnome-doc-utils >= $gdu_cv_version_required... " >&6; }
 if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils >= \$gdu_cv_version_required\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils >= \$gdu_cv_version_required\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-doc-utils >= $gdu_cv_version_required") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   gdu_cv_have_gdu=yes
 else
   gdu_cv_have_gdu=no
 fi
 
 if test "$gdu_cv_have_gdu" = "yes"; then
-	{ $as_echo "$as_me:$LINENO: result: yes" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_user_help=yes
 else
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 	enable_user_help=no
 fi
@@ -15478,7 +14503,7 @@ fi
 
 
 # Check whether --with-help-dir was given.
-if test "${with_help_dir+set}" = set; then
+if test "${with_help_dir+set}" = set; then :
   withval=$with_help_dir;
 else
   with_help_dir='${datadir}/gnome/help'
@@ -15489,7 +14514,7 @@ HELP_DIR="$with_help_dir"
 
 
 # Check whether --with-omf-dir was given.
-if test "${with_omf_dir+set}" = set; then
+if test "${with_omf_dir+set}" = set; then :
   withval=$with_omf_dir;
 else
   with_omf_dir='${datadir}/omf'
@@ -15500,7 +14525,7 @@ OMF_DIR="$with_omf_dir"
 
 
 # Check whether --with-help-formats was given.
-if test "${with_help_formats+set}" = set; then
+if test "${with_help_formats+set}" = set; then :
   withval=$with_help_formats;
 else
   with_help_formats=''
@@ -15510,7 +14535,7 @@ DOC_USER_FORMATS="$with_help_formats"
 
 
 # Check whether --enable-scrollkeeper was given.
-if test "${enable_scrollkeeper+set}" = set; then
+if test "${enable_scrollkeeper+set}" = set; then :
   enableval=$enable_scrollkeeper;
 else
   enable_scrollkeeper=yes
@@ -15554,18 +14579,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_MODULE" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_MODULE" >&5
 $as_echo_n "checking for MONO_MODULE... " >&6; }
 
 if test -n "$MONO_MODULE_CFLAGS"; then
     pkg_cv_MONO_MODULE_CFLAGS="$MONO_MODULE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono >= 1.9.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono >= 1.9.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono >= 1.9.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_MODULE_CFLAGS=`$PKG_CONFIG --cflags "mono >= 1.9.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15577,11 +14602,11 @@ if test -n "$MONO_MODULE_LIBS"; then
     pkg_cv_MONO_MODULE_LIBS="$MONO_MODULE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono >= 1.9.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono >= 1.9.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono >= 1.9.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_MODULE_LIBS=`$PKG_CONFIG --libs "mono >= 1.9.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15593,6 +14618,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15607,7 +14634,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_MODULE_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (mono >= 1.9.1) were not met:
+	as_fn_error $? "Package requirements (mono >= 1.9.1) were not met:
 
 $MONO_MODULE_PKG_ERRORS
 
@@ -15616,24 +14643,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONO_MODULE_CFLAGS
 and MONO_MODULE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (mono >= 1.9.1) were not met:
-
-$MONO_MODULE_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONO_MODULE_CFLAGS
-and MONO_MODULE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -15642,24 +14658,13 @@ and MONO_MODULE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONO_MODULE_CFLAGS
-and MONO_MODULE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONO_MODULE_CFLAGS=$pkg_cv_MONO_MODULE_CFLAGS
 	MONO_MODULE_LIBS=$pkg_cv_MONO_MODULE_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -15668,9 +14673,9 @@ fi
 
 	# Extract the first word of "gmcs", so it can be a program name with args.
 set dummy gmcs; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MCS+set}" = set; then
+if test "${ac_cv_path_MCS+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MCS in
@@ -15683,14 +14688,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MCS="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_MCS" && ac_cv_path_MCS="no"
@@ -15699,10 +14704,10 @@ esac
 fi
 MCS=$ac_cv_path_MCS
 if test -n "$MCS"; then
-  { $as_echo "$as_me:$LINENO: result: $MCS" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MCS" >&5
 $as_echo "$MCS" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -15710,9 +14715,7 @@ fi
 
 
 	if test "x$MCS" = "xno"; then
-		{ { $as_echo "$as_me:$LINENO: error: You need to install 'gmcs'" >&5
-$as_echo "$as_me: error: You need to install 'gmcs'" >&2;}
-   { (exit 1); exit 1; }; }
+		as_fn_error $? "You need to install 'gmcs'" "$LINENO" 5
 	fi
 
 
@@ -15721,9 +14724,9 @@ $as_echo "$as_me: error: You need to install 'gmcs'" >&2;}
 
 	# Extract the first word of "mono", so it can be a program name with args.
 set dummy mono; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MONO+set}" = set; then
+if test "${ac_cv_path_MONO+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MONO in
@@ -15736,14 +14739,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MONO="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_MONO" && ac_cv_path_MONO="no"
@@ -15752,10 +14755,10 @@ esac
 fi
 MONO=$ac_cv_path_MONO
 if test -n "$MONO"; then
-  { $as_echo "$as_me:$LINENO: result: $MONO" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MONO" >&5
 $as_echo "$MONO" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -15763,34 +14766,29 @@ fi
 
 
 	if test "x$MONO" = "xno"; then
-		{ { $as_echo "$as_me:$LINENO: error: You need to install 'mono'" >&5
-$as_echo "$as_me: error: You need to install 'mono'" >&2;}
-   { (exit 1); exit 1; }; }
+		as_fn_error $? "You need to install 'mono'" "$LINENO" 5
 	fi
 
 
 
 
-	for asm in $(echo "mono,2.0,System.Data
-	Mono.Cairo
+	for asm in $(echo "mono,2.0,Mono.Cairo
 	Mono.Posix
 	ICSharpCode.SharpZipLib
 " | cut -d, -f3- | sed 's/\,/ /g')
 	do
-		{ $as_echo "$as_me:$LINENO: checking for Mono 2.0 GAC for $asm.dll" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Mono 2.0 GAC for $asm.dll" >&5
 $as_echo_n "checking for Mono 2.0 GAC for $asm.dll... " >&6; }
 		if test \
 			-e "$($PKG_CONFIG --variable=libdir mono)/mono/2.0/$asm.dll" -o \
 			-e "$($PKG_CONFIG --variable=prefix mono)/lib/mono/2.0/$asm.dll"; \
 			then \
-			{ $as_echo "$as_me:$LINENO: result: found" >&5
+			{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
 $as_echo "found" >&6; }
 		else
-			{ $as_echo "$as_me:$LINENO: result: not found" >&5
+			{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
 $as_echo "not found" >&6; }
-			{ { $as_echo "$as_me:$LINENO: error: missing required Mono 2.0 assembly: $asm.dll" >&5
-$as_echo "$as_me: error: missing required Mono 2.0 assembly: $asm.dll" >&2;}
-   { (exit 1); exit 1; }; }
+			as_fn_error $? "missing required Mono 2.0 assembly: $asm.dll" "$LINENO" 5
 		fi
 	done
 
@@ -15798,18 +14796,18 @@ $as_echo "$as_me: error: missing required Mono 2.0 assembly: $asm.dll" >&2;}
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_2_4_3" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_2_4_3" >&5
 $as_echo_n "checking for MONO_2_4_3... " >&6; }
 
 if test -n "$MONO_2_4_3_CFLAGS"; then
     pkg_cv_MONO_2_4_3_CFLAGS="$MONO_2_4_3_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono >= 2.4.3\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono >= 2.4.3\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono >= 2.4.3") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_2_4_3_CFLAGS=`$PKG_CONFIG --cflags "mono >= 2.4.3" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15821,11 +14819,11 @@ if test -n "$MONO_2_4_3_LIBS"; then
     pkg_cv_MONO_2_4_3_LIBS="$MONO_2_4_3_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono >= 2.4.3\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono >= 2.4.3\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono >= 2.4.3") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_2_4_3_LIBS=`$PKG_CONFIG --libs "mono >= 2.4.3" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15837,6 +14835,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15851,15 +14851,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_2_4_3_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                HAVE_MONO_2_4_3=no
+	HAVE_MONO_2_4_3=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	HAVE_MONO_2_4_3=no
 else
 	MONO_2_4_3_CFLAGS=$pkg_cv_MONO_2_4_3_CFLAGS
 	MONO_2_4_3_LIBS=$pkg_cv_MONO_2_4_3_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	HAVE_MONO_2_4_3=yes
 fi
@@ -15874,18 +14874,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GNOME_2_28" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNOME_2_28" >&5
 $as_echo_n "checking for GNOME_2_28... " >&6; }
 
 if test -n "$GNOME_2_28_CFLAGS"; then
     pkg_cv_GNOME_2_28_CFLAGS="$GNOME_2_28_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-desktop-2.0 >= 2.28\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-desktop-2.0 >= 2.28\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-desktop-2.0 >= 2.28") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_2_28_CFLAGS=`$PKG_CONFIG --cflags "gnome-desktop-2.0 >= 2.28" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15897,11 +14897,11 @@ if test -n "$GNOME_2_28_LIBS"; then
     pkg_cv_GNOME_2_28_LIBS="$GNOME_2_28_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-desktop-2.0 >= 2.28\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnome-desktop-2.0 >= 2.28\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gnome-desktop-2.0 >= 2.28") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GNOME_2_28_LIBS=`$PKG_CONFIG --libs "gnome-desktop-2.0 >= 2.28" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15913,6 +14913,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15927,32 +14929,32 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GNOME_2_28_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                HAVE_GNOME_2_28=no
+	HAVE_GNOME_2_28=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	HAVE_GNOME_2_28=no
 else
 	GNOME_2_28_CFLAGS=$pkg_cv_GNOME_2_28_CFLAGS
 	GNOME_2_28_LIBS=$pkg_cv_GNOME_2_28_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	HAVE_GNOME_2_28=yes
 fi
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MEEGO_PANEL" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MEEGO_PANEL" >&5
 $as_echo_n "checking for MEEGO_PANEL... " >&6; }
 
 if test -n "$MEEGO_PANEL_CFLAGS"; then
     pkg_cv_MEEGO_PANEL_CFLAGS="$MEEGO_PANEL_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"meego-panel\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"meego-panel\""; } >&5
   ($PKG_CONFIG --exists --print-errors "meego-panel") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MEEGO_PANEL_CFLAGS=`$PKG_CONFIG --cflags "meego-panel" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15964,11 +14966,11 @@ if test -n "$MEEGO_PANEL_LIBS"; then
     pkg_cv_MEEGO_PANEL_LIBS="$MEEGO_PANEL_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"meego-panel\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"meego-panel\""; } >&5
   ($PKG_CONFIG --exists --print-errors "meego-panel") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MEEGO_PANEL_LIBS=`$PKG_CONFIG --libs "meego-panel" 2>/dev/null`
 else
   pkg_failed=yes
@@ -15980,6 +14982,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -15994,15 +14998,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MEEGO_PANEL_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                HAVE_MEEGO_PANEL=no
+	HAVE_MEEGO_PANEL=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	HAVE_MEEGO_PANEL=no
 else
 	MEEGO_PANEL_CFLAGS=$pkg_cv_MEEGO_PANEL_CFLAGS
 	MEEGO_PANEL_LIBS=$pkg_cv_MEEGO_PANEL_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	HAVE_MEEGO_PANEL=yes
 fi
@@ -16016,18 +15020,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for NDESK_DBUS_GLIB" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NDESK_DBUS_GLIB" >&5
 $as_echo_n "checking for NDESK_DBUS_GLIB... " >&6; }
 
 if test -n "$NDESK_DBUS_GLIB_CFLAGS"; then
     pkg_cv_NDESK_DBUS_GLIB_CFLAGS="$NDESK_DBUS_GLIB_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-glib-1.0 >= 0.3\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-glib-1.0 >= 0.3\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ndesk-dbus-glib-1.0 >= 0.3") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NDESK_DBUS_GLIB_CFLAGS=`$PKG_CONFIG --cflags "ndesk-dbus-glib-1.0 >= 0.3" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16039,11 +15043,11 @@ if test -n "$NDESK_DBUS_GLIB_LIBS"; then
     pkg_cv_NDESK_DBUS_GLIB_LIBS="$NDESK_DBUS_GLIB_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-glib-1.0 >= 0.3\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-glib-1.0 >= 0.3\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ndesk-dbus-glib-1.0 >= 0.3") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NDESK_DBUS_GLIB_LIBS=`$PKG_CONFIG --libs "ndesk-dbus-glib-1.0 >= 0.3" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16055,6 +15059,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16069,18 +15075,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$NDESK_DBUS_GLIB_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (ndesk-dbus-glib-1.0 >= 0.3) were not met:
-
-$NDESK_DBUS_GLIB_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables NDESK_DBUS_GLIB_CFLAGS
-and NDESK_DBUS_GLIB_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (ndesk-dbus-glib-1.0 >= 0.3) were not met:
+	as_fn_error $? "Package requirements (ndesk-dbus-glib-1.0 >= 0.3) were not met:
 
 $NDESK_DBUS_GLIB_PKG_ERRORS
 
@@ -16089,13 +15084,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables NDESK_DBUS_GLIB_CFLAGS
 and NDESK_DBUS_GLIB_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -16104,41 +15099,30 @@ and NDESK_DBUS_GLIB_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables NDESK_DBUS_GLIB_CFLAGS
-and NDESK_DBUS_GLIB_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	NDESK_DBUS_GLIB_CFLAGS=$pkg_cv_NDESK_DBUS_GLIB_CFLAGS
 	NDESK_DBUS_GLIB_LIBS=$pkg_cv_NDESK_DBUS_GLIB_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for NDESK_DBUS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NDESK_DBUS" >&5
 $as_echo_n "checking for NDESK_DBUS... " >&6; }
 
 if test -n "$NDESK_DBUS_CFLAGS"; then
     pkg_cv_NDESK_DBUS_CFLAGS="$NDESK_DBUS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-1.0 >= 0.5\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-1.0 >= 0.5\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ndesk-dbus-1.0 >= 0.5") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NDESK_DBUS_CFLAGS=`$PKG_CONFIG --cflags "ndesk-dbus-1.0 >= 0.5" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16150,11 +15134,11 @@ if test -n "$NDESK_DBUS_LIBS"; then
     pkg_cv_NDESK_DBUS_LIBS="$NDESK_DBUS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-1.0 >= 0.5\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ndesk-dbus-1.0 >= 0.5\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ndesk-dbus-1.0 >= 0.5") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NDESK_DBUS_LIBS=`$PKG_CONFIG --libs "ndesk-dbus-1.0 >= 0.5" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16166,6 +15150,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16180,7 +15166,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$NDESK_DBUS_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (ndesk-dbus-1.0 >= 0.5) were not met:
+	as_fn_error $? "Package requirements (ndesk-dbus-1.0 >= 0.5) were not met:
 
 $NDESK_DBUS_PKG_ERRORS
 
@@ -16189,34 +15175,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables NDESK_DBUS_CFLAGS
 and NDESK_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (ndesk-dbus-1.0 >= 0.5) were not met:
-
-$NDESK_DBUS_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables NDESK_DBUS_CFLAGS
-and NDESK_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables NDESK_DBUS_CFLAGS
-and NDESK_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -16225,14 +15190,13 @@ and NDESK_DBUS_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	NDESK_DBUS_CFLAGS=$pkg_cv_NDESK_DBUS_CFLAGS
 	NDESK_DBUS_LIBS=$pkg_cv_NDESK_DBUS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -16240,18 +15204,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_ADDINS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_ADDINS" >&5
 $as_echo_n "checking for MONO_ADDINS... " >&6; }
 
 if test -n "$MONO_ADDINS_CFLAGS"; then
     pkg_cv_MONO_ADDINS_CFLAGS="$MONO_ADDINS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-addins >= 0.3.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-addins >= 0.3.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-addins >= 0.3.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ADDINS_CFLAGS=`$PKG_CONFIG --cflags "mono-addins >= 0.3.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16263,11 +15227,11 @@ if test -n "$MONO_ADDINS_LIBS"; then
     pkg_cv_MONO_ADDINS_LIBS="$MONO_ADDINS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-addins >= 0.3.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-addins >= 0.3.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-addins >= 0.3.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ADDINS_LIBS=`$PKG_CONFIG --libs "mono-addins >= 0.3.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16279,6 +15243,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16293,7 +15259,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_ADDINS_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (mono-addins >= 0.3.1) were not met:
+	as_fn_error $? "Package requirements (mono-addins >= 0.3.1) were not met:
 
 $MONO_ADDINS_PKG_ERRORS
 
@@ -16302,34 +15268,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONO_ADDINS_CFLAGS
 and MONO_ADDINS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (mono-addins >= 0.3.1) were not met:
-
-$MONO_ADDINS_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONO_ADDINS_CFLAGS
-and MONO_ADDINS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONO_ADDINS_CFLAGS
-and MONO_ADDINS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -16338,31 +15283,30 @@ and MONO_ADDINS_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONO_ADDINS_CFLAGS=$pkg_cv_MONO_ADDINS_CFLAGS
 	MONO_ADDINS_LIBS=$pkg_cv_MONO_ADDINS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_ADDINS_SETUP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_ADDINS_SETUP" >&5
 $as_echo_n "checking for MONO_ADDINS_SETUP... " >&6; }
 
 if test -n "$MONO_ADDINS_SETUP_CFLAGS"; then
     pkg_cv_MONO_ADDINS_SETUP_CFLAGS="$MONO_ADDINS_SETUP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-addins-setup >= 0.3.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-addins-setup >= 0.3.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-addins-setup >= 0.3.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ADDINS_SETUP_CFLAGS=`$PKG_CONFIG --cflags "mono-addins-setup >= 0.3.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16374,11 +15318,11 @@ if test -n "$MONO_ADDINS_SETUP_LIBS"; then
     pkg_cv_MONO_ADDINS_SETUP_LIBS="$MONO_ADDINS_SETUP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-addins-setup >= 0.3.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-addins-setup >= 0.3.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-addins-setup >= 0.3.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ADDINS_SETUP_LIBS=`$PKG_CONFIG --libs "mono-addins-setup >= 0.3.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16390,6 +15334,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16404,7 +15350,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_ADDINS_SETUP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (mono-addins-setup >= 0.3.1) were not met:
+	as_fn_error $? "Package requirements (mono-addins-setup >= 0.3.1) were not met:
 
 $MONO_ADDINS_SETUP_PKG_ERRORS
 
@@ -16413,24 +15359,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONO_ADDINS_SETUP_CFLAGS
 and MONO_ADDINS_SETUP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (mono-addins-setup >= 0.3.1) were not met:
-
-$MONO_ADDINS_SETUP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONO_ADDINS_SETUP_CFLAGS
-and MONO_ADDINS_SETUP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -16439,24 +15374,13 @@ and MONO_ADDINS_SETUP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONO_ADDINS_SETUP_CFLAGS
-and MONO_ADDINS_SETUP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONO_ADDINS_SETUP_CFLAGS=$pkg_cv_MONO_ADDINS_SETUP_CFLAGS
 	MONO_ADDINS_SETUP_LIBS=$pkg_cv_MONO_ADDINS_SETUP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -16464,18 +15388,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for NOTIFY_SHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NOTIFY_SHARP" >&5
 $as_echo_n "checking for NOTIFY_SHARP... " >&6; }
 
 if test -n "$NOTIFY_SHARP_CFLAGS"; then
     pkg_cv_NOTIFY_SHARP_CFLAGS="$NOTIFY_SHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"notify-sharp\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"notify-sharp\""; } >&5
   ($PKG_CONFIG --exists --print-errors "notify-sharp") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NOTIFY_SHARP_CFLAGS=`$PKG_CONFIG --cflags "notify-sharp" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16487,11 +15411,11 @@ if test -n "$NOTIFY_SHARP_LIBS"; then
     pkg_cv_NOTIFY_SHARP_LIBS="$NOTIFY_SHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"notify-sharp\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"notify-sharp\""; } >&5
   ($PKG_CONFIG --exists --print-errors "notify-sharp") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NOTIFY_SHARP_LIBS=`$PKG_CONFIG --libs "notify-sharp" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16503,6 +15427,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16517,15 +15443,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$NOTIFY_SHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                have_notify_sharp=no
+	have_notify_sharp=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	have_notify_sharp=no
 else
 	NOTIFY_SHARP_CFLAGS=$pkg_cv_NOTIFY_SHARP_CFLAGS
 	NOTIFY_SHARP_LIBS=$pkg_cv_NOTIFY_SHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	have_notify_sharp=yes
 fi
@@ -16548,14 +15474,14 @@ else
   EXTERNAL_NOTIFY_SHARP_FALSE=
 fi
 
-		{ $as_echo "$as_me:$LINENO: result: no" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 	fi
 
 
 
 	# Check whether --enable-boo was given.
-if test "${enable_boo+set}" = set; then
+if test "${enable_boo+set}" = set; then :
   enableval=$enable_boo;
 			if test "x$enableval" = "xno"; then
 				enable_boo=no
@@ -16572,18 +15498,18 @@ fi
 	if test "x$enable_boo" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for BOO" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BOO" >&5
 $as_echo_n "checking for BOO... " >&6; }
 
 if test -n "$BOO_CFLAGS"; then
     pkg_cv_BOO_CFLAGS="$BOO_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"boo >= 0.8.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"boo >= 0.8.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "boo >= 0.8.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_BOO_CFLAGS=`$PKG_CONFIG --cflags "boo >= 0.8.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16595,11 +15521,11 @@ if test -n "$BOO_LIBS"; then
     pkg_cv_BOO_LIBS="$BOO_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"boo >= 0.8.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"boo >= 0.8.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "boo >= 0.8.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_BOO_LIBS=`$PKG_CONFIG --libs "boo >= 0.8.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16611,6 +15537,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16625,18 +15553,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$BOO_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (boo >= 0.8.1) were not met:
-
-$BOO_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables BOO_CFLAGS
-and BOO_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (boo >= 0.8.1) were not met:
+	as_fn_error $? "Package requirements (boo >= 0.8.1) were not met:
 
 $BOO_PKG_ERRORS
 
@@ -16645,23 +15562,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables BOO_CFLAGS
 and BOO_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables BOO_CFLAGS
-and BOO_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -16670,14 +15577,13 @@ and BOO_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	BOO_CFLAGS=$pkg_cv_BOO_CFLAGS
 	BOO_LIBS=$pkg_cv_BOO_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 		 if true; then
@@ -16702,7 +15608,7 @@ fi
 
 
 	# Check whether --enable-docs was given.
-if test "${enable_docs+set}" = set; then
+if test "${enable_docs+set}" = set; then :
   enableval=$enable_docs;
 else
   enable_docs=yes
@@ -16712,9 +15618,9 @@ fi
 	if test "x$enable_docs" = "xyes"; then
 		# Extract the first word of "monodocer", so it can be a program name with args.
 set dummy monodocer; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MONODOCER+set}" = set; then
+if test "${ac_cv_path_MONODOCER+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MONODOCER in
@@ -16727,14 +15633,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MONODOCER="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_MONODOCER" && ac_cv_path_MONODOCER="no"
@@ -16743,25 +15649,23 @@ esac
 fi
 MONODOCER=$ac_cv_path_MONODOCER
 if test -n "$MONODOCER"; then
-  { $as_echo "$as_me:$LINENO: result: $MONODOCER" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MONODOCER" >&5
 $as_echo "$MONODOCER" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 		if test "x$MONODOCER" = "xno"; then
-			{ { $as_echo "$as_me:$LINENO: error: You need to install monodoc, or pass --disable-docs to configure to skip documentation installation" >&5
-$as_echo "$as_me: error: You need to install monodoc, or pass --disable-docs to configure to skip documentation installation" >&2;}
-   { (exit 1); exit 1; }; }
+			as_fn_error $? "You need to install monodoc, or pass --disable-docs to configure to skip documentation installation" "$LINENO" 5
 		fi
 
 		# Extract the first word of "mdassembler", so it can be a program name with args.
 set dummy mdassembler; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MDASSEMBLER+set}" = set; then
+if test "${ac_cv_path_MDASSEMBLER+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $MDASSEMBLER in
@@ -16774,14 +15678,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_MDASSEMBLER="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_MDASSEMBLER" && ac_cv_path_MDASSEMBLER="no"
@@ -16790,18 +15694,16 @@ esac
 fi
 MDASSEMBLER=$ac_cv_path_MDASSEMBLER
 if test -n "$MDASSEMBLER"; then
-  { $as_echo "$as_me:$LINENO: result: $MDASSEMBLER" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MDASSEMBLER" >&5
 $as_echo "$MDASSEMBLER" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 		if test "x$MDASSEMBLER" = "xno"; then
-			{ { $as_echo "$as_me:$LINENO: error: You need to install mdassembler, or pass --disable-docs to configure to skip documentation installation" >&5
-$as_echo "$as_me: error: You need to install mdassembler, or pass --disable-docs to configure to skip documentation installation" >&2;}
-   { (exit 1); exit 1; }; }
+			as_fn_error $? "You need to install mdassembler, or pass --disable-docs to configure to skip documentation installation" "$LINENO" 5
 		fi
 
 		DOCDIR=`$PKG_CONFIG monodoc --variable=sourcesdir`
@@ -16815,7 +15717,7 @@ else
 fi
 
 	else
-		{ $as_echo "$as_me:$LINENO: not building ${PACKAGE} API documentation" >&5
+		{ $as_echo "$as_me:${as_lineno-$LINENO}: not building ${PACKAGE} API documentation" >&5
 $as_echo "$as_me: not building ${PACKAGE} API documentation" >&6;}
 		 if false; then
   BUILD_DOCS_TRUE=
@@ -16836,20 +15738,20 @@ fi
 	have_libwebkit=no
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for LIBWEBKIT" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBWEBKIT" >&5
 $as_echo_n "checking for LIBWEBKIT... " >&6; }
 
 if test -n "$LIBWEBKIT_CFLAGS"; then
     pkg_cv_LIBWEBKIT_CFLAGS="$LIBWEBKIT_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= \$WEBKIT_MIN_VERSION
-		libsoup-2.4 >= \$SOUP_MIN_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= \$WEBKIT_MIN_VERSION
+		libsoup-2.4 >= \$SOUP_MIN_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "webkit-1.0 >= $WEBKIT_MIN_VERSION
 		libsoup-2.4 >= $SOUP_MIN_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBWEBKIT_CFLAGS=`$PKG_CONFIG --cflags "webkit-1.0 >= $WEBKIT_MIN_VERSION
 		libsoup-2.4 >= $SOUP_MIN_VERSION" 2>/dev/null`
 else
@@ -16862,13 +15764,13 @@ if test -n "$LIBWEBKIT_LIBS"; then
     pkg_cv_LIBWEBKIT_LIBS="$LIBWEBKIT_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= \$WEBKIT_MIN_VERSION
-		libsoup-2.4 >= \$SOUP_MIN_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= \$WEBKIT_MIN_VERSION
+		libsoup-2.4 >= \$SOUP_MIN_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "webkit-1.0 >= $WEBKIT_MIN_VERSION
 		libsoup-2.4 >= $SOUP_MIN_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBWEBKIT_LIBS=`$PKG_CONFIG --libs "webkit-1.0 >= $WEBKIT_MIN_VERSION
 		libsoup-2.4 >= $SOUP_MIN_VERSION" 2>/dev/null`
 else
@@ -16881,6 +15783,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16897,15 +15801,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBWEBKIT_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                have_libwebkit=no
+	have_libwebkit=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	have_libwebkit=no
 else
 	LIBWEBKIT_CFLAGS=$pkg_cv_LIBWEBKIT_CFLAGS
 	LIBWEBKIT_LIBS=$pkg_cv_LIBWEBKIT_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	have_libwebkit=yes
 fi
@@ -16923,18 +15827,18 @@ fi
 	have_libsoup_gnome=no
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for LIBSOUP_GNOME" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBSOUP_GNOME" >&5
 $as_echo_n "checking for LIBSOUP_GNOME... " >&6; }
 
 if test -n "$LIBSOUP_GNOME_CFLAGS"; then
     pkg_cv_LIBSOUP_GNOME_CFLAGS="$LIBSOUP_GNOME_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libsoup-gnome-2.4 >= \$SOUP_GNOME_MIN_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-gnome-2.4 >= \$SOUP_GNOME_MIN_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsoup-gnome-2.4 >= $SOUP_GNOME_MIN_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBSOUP_GNOME_CFLAGS=`$PKG_CONFIG --cflags "libsoup-gnome-2.4 >= $SOUP_GNOME_MIN_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16946,11 +15850,11 @@ if test -n "$LIBSOUP_GNOME_LIBS"; then
     pkg_cv_LIBSOUP_GNOME_LIBS="$LIBSOUP_GNOME_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libsoup-gnome-2.4 >= \$SOUP_GNOME_MIN_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-gnome-2.4 >= \$SOUP_GNOME_MIN_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsoup-gnome-2.4 >= $SOUP_GNOME_MIN_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBSOUP_GNOME_LIBS=`$PKG_CONFIG --libs "libsoup-gnome-2.4 >= $SOUP_GNOME_MIN_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -16962,6 +15866,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16976,15 +15882,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBSOUP_GNOME_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                have_libsoup_gnome=no
+	have_libsoup_gnome=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	have_libsoup_gnome=no
 else
 	LIBSOUP_GNOME_CFLAGS=$pkg_cv_LIBSOUP_GNOME_CFLAGS
 	LIBSOUP_GNOME_LIBS=$pkg_cv_LIBSOUP_GNOME_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	have_libsoup_gnome=$have_libwebkit
 fi
@@ -17000,9 +15906,7 @@ fi
 
 	if test x$have_libsoup_gnome = xyes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_LIBSOUP_GNOME 1
-_ACEOF
+$as_echo "#define HAVE_LIBSOUP_GNOME 1" >>confdefs.h
 
 	fi
 
@@ -17011,7 +15915,7 @@ _ACEOF
 	GDATASHARP_REQUIRED_VERSION=1.4
 
 	# Check whether --enable-youtube was given.
-if test "${enable_youtube+set}" = set; then
+if test "${enable_youtube+set}" = set; then :
   enableval=$enable_youtube;
 else
   enable_youtube="yes"
@@ -17021,18 +15925,18 @@ fi
 	if test "x$enable_youtube" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GDATASHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDATASHARP" >&5
 $as_echo_n "checking for GDATASHARP... " >&6; }
 
 if test -n "$GDATASHARP_CFLAGS"; then
     pkg_cv_GDATASHARP_CFLAGS="$GDATASHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= 1.5\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= 1.5\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= 1.5") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_CFLAGS=`$PKG_CONFIG --cflags "gdata-sharp-youtube >= 1.5" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17044,11 +15948,11 @@ if test -n "$GDATASHARP_LIBS"; then
     pkg_cv_GDATASHARP_LIBS="$GDATASHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= 1.5\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= 1.5\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= 1.5") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_LIBS=`$PKG_CONFIG --libs "gdata-sharp-youtube >= 1.5" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17060,6 +15964,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17074,22 +15980,20 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GDATASHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GDATASHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDATASHARP" >&5
 $as_echo_n "checking for GDATASHARP... " >&6; }
 
 if test -n "$GDATASHARP_CFLAGS"; then
     pkg_cv_GDATASHARP_CFLAGS="$GDATASHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_CFLAGS=`$PKG_CONFIG --cflags "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17101,11 +16005,11 @@ if test -n "$GDATASHARP_LIBS"; then
     pkg_cv_GDATASHARP_LIBS="$GDATASHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_LIBS=`$PKG_CONFIG --libs "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17117,6 +16021,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17131,7 +16037,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GDATASHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
+	as_fn_error $? "Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
 
 $GDATASHARP_PKG_ERRORS
 
@@ -17140,34 +16046,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GDATASHARP_CFLAGS
 and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
-
-$GDATASHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GDATASHARP_CFLAGS
-and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GDATASHARP_CFLAGS
-and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -17176,14 +16061,13 @@ and GDATASHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GDATASHARP_CFLAGS=$pkg_cv_GDATASHARP_CFLAGS
 	GDATASHARP_LIBS=$pkg_cv_GDATASHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 			  if false; then
   HAVE_GDATASHARP_1_5_TRUE=
@@ -17195,20 +16079,22 @@ fi
 
 
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GDATASHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDATASHARP" >&5
 $as_echo_n "checking for GDATASHARP... " >&6; }
 
 if test -n "$GDATASHARP_CFLAGS"; then
     pkg_cv_GDATASHARP_CFLAGS="$GDATASHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_CFLAGS=`$PKG_CONFIG --cflags "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17220,11 +16106,11 @@ if test -n "$GDATASHARP_LIBS"; then
     pkg_cv_GDATASHARP_LIBS="$GDATASHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdata-sharp-youtube >= \$GDATASHARP_REQUIRED_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GDATASHARP_LIBS=`$PKG_CONFIG --libs "gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17236,6 +16122,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17250,18 +16138,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GDATASHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
-
-$GDATASHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GDATASHARP_CFLAGS
-and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
+	as_fn_error $? "Package requirements (gdata-sharp-youtube >= $GDATASHARP_REQUIRED_VERSION) were not met:
 
 $GDATASHARP_PKG_ERRORS
 
@@ -17270,13 +16147,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GDATASHARP_CFLAGS
 and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -17285,24 +16162,13 @@ and GDATASHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GDATASHARP_CFLAGS
-and GDATASHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GDATASHARP_CFLAGS=$pkg_cv_GDATASHARP_CFLAGS
 	GDATASHARP_LIBS=$pkg_cv_GDATASHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 			  if false; then
   HAVE_GDATASHARP_1_5_TRUE=
@@ -17316,7 +16182,7 @@ fi
 else
 	GDATASHARP_CFLAGS=$pkg_cv_GDATASHARP_CFLAGS
 	GDATASHARP_LIBS=$pkg_cv_GDATASHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	 if true; then
   HAVE_GDATASHARP_1_5_TRUE=
@@ -17358,7 +16224,7 @@ fi
 
 
 	# Check whether --enable-hal was given.
-if test "${enable_hal+set}" = set; then
+if test "${enable_hal+set}" = set; then :
   enableval=$enable_hal;
 else
   enable_hal="yes"
@@ -17379,14 +16245,14 @@ fi
 	GNOMESHARP_REQUIRED=2.8
 
 	# Check whether --enable-gio was given.
-if test "${enable_gio+set}" = set; then
+if test "${enable_gio+set}" = set; then :
   enableval=$enable_gio;
 else
   enable_gio="yes"
 fi
 
 	# Check whether --enable-gio_hardware was given.
-if test "${enable_gio_hardware+set}" = set; then
+if test "${enable_gio_hardware+set}" = set; then :
   enableval=$enable_gio_hardware;
 else
   enable_gio_hardware="yes"
@@ -17396,18 +16262,18 @@ fi
 	if test "x$enable_gio" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GTKSHARP_BEANS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKSHARP_BEANS" >&5
 $as_echo_n "checking for GTKSHARP_BEANS... " >&6; }
 
 if test -n "$GTKSHARP_BEANS_CFLAGS"; then
     pkg_cv_GTKSHARP_BEANS_CFLAGS="$GTKSHARP_BEANS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-beans-2.0 >= \$GNOMESHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-beans-2.0 >= \$GNOMESHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-beans-2.0 >= $GNOMESHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_BEANS_CFLAGS=`$PKG_CONFIG --cflags "gtk-sharp-beans-2.0 >= $GNOMESHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17419,11 +16285,11 @@ if test -n "$GTKSHARP_BEANS_LIBS"; then
     pkg_cv_GTKSHARP_BEANS_LIBS="$GTKSHARP_BEANS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-beans-2.0 >= \$GNOMESHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-beans-2.0 >= \$GNOMESHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-beans-2.0 >= $GNOMESHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_BEANS_LIBS=`$PKG_CONFIG --libs "gtk-sharp-beans-2.0 >= $GNOMESHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17435,6 +16301,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17449,33 +16317,33 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GTKSHARP_BEANS_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_gio=no
+	enable_gio=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_gio=no
 else
 	GTKSHARP_BEANS_CFLAGS=$pkg_cv_GTKSHARP_BEANS_CFLAGS
 	GTKSHARP_BEANS_LIBS=$pkg_cv_GTKSHARP_BEANS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_gio=yes
 fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GIOSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GIOSHARP" >&5
 $as_echo_n "checking for GIOSHARP... " >&6; }
 
 if test -n "$GIOSHARP_CFLAGS"; then
     pkg_cv_GIOSHARP_CFLAGS="$GIOSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gio-sharp-2.0 >= 2.22\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-sharp-2.0 >= 2.22\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gio-sharp-2.0 >= 2.22") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GIOSHARP_CFLAGS=`$PKG_CONFIG --cflags "gio-sharp-2.0 >= 2.22" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17487,11 +16355,11 @@ if test -n "$GIOSHARP_LIBS"; then
     pkg_cv_GIOSHARP_LIBS="$GIOSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gio-sharp-2.0 >= 2.22\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-sharp-2.0 >= 2.22\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gio-sharp-2.0 >= 2.22") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GIOSHARP_LIBS=`$PKG_CONFIG --libs "gio-sharp-2.0 >= 2.22" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17503,6 +16371,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17517,15 +16387,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GIOSHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_gio=no
+	enable_gio=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_gio=no
 else
 	GIOSHARP_CFLAGS=$pkg_cv_GIOSHARP_CFLAGS
 	GIOSHARP_LIBS=$pkg_cv_GIOSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_gio="$enable_gio"
 fi
@@ -17540,18 +16410,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GLIB_2_22" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB_2_22" >&5
 $as_echo_n "checking for GLIB_2_22... " >&6; }
 
 if test -n "$GLIB_2_22_CFLAGS"; then
     pkg_cv_GLIB_2_22_CFLAGS="$GLIB_2_22_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.22\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.22\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.22") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIB_2_22_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.22" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17563,11 +16433,11 @@ if test -n "$GLIB_2_22_LIBS"; then
     pkg_cv_GLIB_2_22_LIBS="$GLIB_2_22_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.22\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.22\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.22") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIB_2_22_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.22" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17579,6 +16449,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17593,15 +16465,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GLIB_2_22_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_gio=no
+	enable_gio=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_gio=no
 else
 	GLIB_2_22_CFLAGS=$pkg_cv_GLIB_2_22_CFLAGS
 	GLIB_2_22_LIBS=$pkg_cv_GLIB_2_22_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_gio="$enable_gio"
 fi
@@ -17609,18 +16481,18 @@ fi
 		if test "x$enable_gio_hardware" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GUDEV_SHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GUDEV_SHARP" >&5
 $as_echo_n "checking for GUDEV_SHARP... " >&6; }
 
 if test -n "$GUDEV_SHARP_CFLAGS"; then
     pkg_cv_GUDEV_SHARP_CFLAGS="$GUDEV_SHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gudev-sharp-1.0 >= 0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-sharp-1.0 >= 0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gudev-sharp-1.0 >= 0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GUDEV_SHARP_CFLAGS=`$PKG_CONFIG --cflags "gudev-sharp-1.0 >= 0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17632,11 +16504,11 @@ if test -n "$GUDEV_SHARP_LIBS"; then
     pkg_cv_GUDEV_SHARP_LIBS="$GUDEV_SHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gudev-sharp-1.0 >= 0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gudev-sharp-1.0 >= 0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gudev-sharp-1.0 >= 0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GUDEV_SHARP_LIBS=`$PKG_CONFIG --libs "gudev-sharp-1.0 >= 0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17648,6 +16520,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17662,33 +16536,33 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GUDEV_SHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_gio_hardware=no
+	enable_gio_hardware=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_gio_hardware=no
 else
 	GUDEV_SHARP_CFLAGS=$pkg_cv_GUDEV_SHARP_CFLAGS
 	GUDEV_SHARP_LIBS=$pkg_cv_GUDEV_SHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_gio_hardware="$enable_gio"
 fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GKEYFILE_SHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GKEYFILE_SHARP" >&5
 $as_echo_n "checking for GKEYFILE_SHARP... " >&6; }
 
 if test -n "$GKEYFILE_SHARP_CFLAGS"; then
     pkg_cv_GKEYFILE_SHARP_CFLAGS="$GKEYFILE_SHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gkeyfile-sharp >= 0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gkeyfile-sharp >= 0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gkeyfile-sharp >= 0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GKEYFILE_SHARP_CFLAGS=`$PKG_CONFIG --cflags "gkeyfile-sharp >= 0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17700,11 +16574,11 @@ if test -n "$GKEYFILE_SHARP_LIBS"; then
     pkg_cv_GKEYFILE_SHARP_LIBS="$GKEYFILE_SHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gkeyfile-sharp >= 0.1\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gkeyfile-sharp >= 0.1\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gkeyfile-sharp >= 0.1") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GKEYFILE_SHARP_LIBS=`$PKG_CONFIG --libs "gkeyfile-sharp >= 0.1" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17716,6 +16590,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17730,15 +16606,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GKEYFILE_SHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_gio_hardware=no
+	enable_gio_hardware=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_gio_hardware=no
 else
 	GKEYFILE_SHARP_CFLAGS=$pkg_cv_GKEYFILE_SHARP_CFLAGS
 	GKEYFILE_SHARP_LIBS=$pkg_cv_GKEYFILE_SHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_gio_hardware="$enable_gio_hardware"
 fi
@@ -17788,7 +16664,7 @@ fi
 
 
 	# Check whether --enable-moonlight was given.
-if test "${enable_moonlight+set}" = set; then
+if test "${enable_moonlight+set}" = set; then :
   enableval=$enable_moonlight;
 else
   enable_moonlight="no"
@@ -17797,11 +16673,11 @@ fi
 
 	if test "x$enable_moonlight" = "xauto"; then
 		if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtksilver >= 0.8 silverdesktop >= 0.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   enable_moonlight="yes"
 else
   enable_moonlight="no"
@@ -17811,18 +16687,18 @@ fi
 	if test "x$enable_moonlight" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MOONLIGHT" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MOONLIGHT" >&5
 $as_echo_n "checking for MOONLIGHT... " >&6; }
 
 if test -n "$MOONLIGHT_CFLAGS"; then
     pkg_cv_MOONLIGHT_CFLAGS="$MOONLIGHT_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtksilver >= 0.8 silverdesktop >= 0.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MOONLIGHT_CFLAGS=`$PKG_CONFIG --cflags "gtksilver >= 0.8 silverdesktop >= 0.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17834,11 +16710,11 @@ if test -n "$MOONLIGHT_LIBS"; then
     pkg_cv_MOONLIGHT_LIBS="$MOONLIGHT_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtksilver >= 0.8 silverdesktop >= 0.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtksilver >= 0.8 silverdesktop >= 0.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MOONLIGHT_LIBS=`$PKG_CONFIG --libs "gtksilver >= 0.8 silverdesktop >= 0.8" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17850,6 +16726,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17864,7 +16742,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MOONLIGHT_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gtksilver >= 0.8 silverdesktop >= 0.8) were not met:
+	as_fn_error $? "Package requirements (gtksilver >= 0.8 silverdesktop >= 0.8) were not met:
 
 $MOONLIGHT_PKG_ERRORS
 
@@ -17873,24 +16751,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MOONLIGHT_CFLAGS
 and MOONLIGHT_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gtksilver >= 0.8 silverdesktop >= 0.8) were not met:
-
-$MOONLIGHT_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MOONLIGHT_CFLAGS
-and MOONLIGHT_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -17899,24 +16766,13 @@ and MOONLIGHT_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MOONLIGHT_CFLAGS
-and MOONLIGHT_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MOONLIGHT_CFLAGS=$pkg_cv_MOONLIGHT_CFLAGS
 	MOONLIGHT_LIBS=$pkg_cv_MOONLIGHT_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -17944,7 +16800,7 @@ fi
 	NUNIT_REQUIRED=2.4.7
 
 	# Check whether --enable-tests was given.
-if test "${enable_tests+set}" = set; then
+if test "${enable_tests+set}" = set; then :
   enableval=$enable_tests; enable_tests=$enableval
 else
   enable_tests="no"
@@ -17964,18 +16820,18 @@ fi
 	else
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for NUNIT" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NUNIT" >&5
 $as_echo_n "checking for NUNIT... " >&6; }
 
 if test -n "$NUNIT_CFLAGS"; then
     pkg_cv_NUNIT_CFLAGS="$NUNIT_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"nunit >= \$NUNIT_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"nunit >= \$NUNIT_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "nunit >= $NUNIT_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NUNIT_CFLAGS=`$PKG_CONFIG --cflags "nunit >= $NUNIT_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -17987,11 +16843,11 @@ if test -n "$NUNIT_LIBS"; then
     pkg_cv_NUNIT_LIBS="$NUNIT_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"nunit >= \$NUNIT_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"nunit >= \$NUNIT_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "nunit >= $NUNIT_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NUNIT_LIBS=`$PKG_CONFIG --libs "nunit >= $NUNIT_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18003,6 +16859,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18017,15 +16875,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$NUNIT_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                do_tests="no"
+	do_tests="no"
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	do_tests="no"
 else
 	NUNIT_CFLAGS=$pkg_cv_NUNIT_CFLAGS
 	NUNIT_LIBS=$pkg_cv_NUNIT_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	do_tests="yes"
 fi
@@ -18043,18 +16901,18 @@ fi
 		if test "x$do_tests" = "xno"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for NUNIT" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NUNIT" >&5
 $as_echo_n "checking for NUNIT... " >&6; }
 
 if test -n "$NUNIT_CFLAGS"; then
     pkg_cv_NUNIT_CFLAGS="$NUNIT_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-nunit >= 2.4\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-nunit >= 2.4\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-nunit >= 2.4") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NUNIT_CFLAGS=`$PKG_CONFIG --cflags "mono-nunit >= 2.4" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18066,11 +16924,11 @@ if test -n "$NUNIT_LIBS"; then
     pkg_cv_NUNIT_LIBS="$NUNIT_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-nunit >= 2.4\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-nunit >= 2.4\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-nunit >= 2.4") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_NUNIT_LIBS=`$PKG_CONFIG --libs "mono-nunit >= 2.4" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18082,6 +16940,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18096,15 +16956,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$NUNIT_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                do_tests="no"
+	do_tests="no"
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	do_tests="no"
 else
 	NUNIT_CFLAGS=$pkg_cv_NUNIT_CFLAGS
 	NUNIT_LIBS=$pkg_cv_NUNIT_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	do_tests="yes"
 fi
@@ -18120,7 +16980,7 @@ fi
 
 
 			if test "x$do_tests" = "xno"; then
-				{ $as_echo "$as_me:$LINENO: WARNING: Could not find nunit: tests will not be available" >&5
+				{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find nunit: tests will not be available" >&5
 $as_echo "$as_me: WARNING: Could not find nunit: tests will not be available" >&2;}			fi
 		fi
 	fi
@@ -18129,18 +16989,18 @@ $as_echo "$as_me: WARNING: Could not find nunit: tests will not be available" >&
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for TAGLIB_SHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TAGLIB_SHARP" >&5
 $as_echo_n "checking for TAGLIB_SHARP... " >&6; }
 
 if test -n "$TAGLIB_SHARP_CFLAGS"; then
     pkg_cv_TAGLIB_SHARP_CFLAGS="$TAGLIB_SHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"taglib-sharp >= 2.0.3.7\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"taglib-sharp >= 2.0.3.7\""; } >&5
   ($PKG_CONFIG --exists --print-errors "taglib-sharp >= 2.0.3.7") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_TAGLIB_SHARP_CFLAGS=`$PKG_CONFIG --cflags "taglib-sharp >= 2.0.3.7" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18152,11 +17012,11 @@ if test -n "$TAGLIB_SHARP_LIBS"; then
     pkg_cv_TAGLIB_SHARP_LIBS="$TAGLIB_SHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"taglib-sharp >= 2.0.3.7\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"taglib-sharp >= 2.0.3.7\""; } >&5
   ($PKG_CONFIG --exists --print-errors "taglib-sharp >= 2.0.3.7") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_TAGLIB_SHARP_LIBS=`$PKG_CONFIG --libs "taglib-sharp >= 2.0.3.7" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18168,6 +17028,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18182,7 +17044,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$TAGLIB_SHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (taglib-sharp >= 2.0.3.7) were not met:
+	as_fn_error $? "Package requirements (taglib-sharp >= 2.0.3.7) were not met:
 
 $TAGLIB_SHARP_PKG_ERRORS
 
@@ -18191,34 +17053,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables TAGLIB_SHARP_CFLAGS
 and TAGLIB_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (taglib-sharp >= 2.0.3.7) were not met:
-
-$TAGLIB_SHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables TAGLIB_SHARP_CFLAGS
-and TAGLIB_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables TAGLIB_SHARP_CFLAGS
-and TAGLIB_SHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18227,14 +17068,13 @@ and TAGLIB_SHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	TAGLIB_SHARP_CFLAGS=$pkg_cv_TAGLIB_SHARP_CFLAGS
 	TAGLIB_SHARP_LIBS=$pkg_cv_TAGLIB_SHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
@@ -18244,18 +17084,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GTKSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKSHARP" >&5
 $as_echo_n "checking for GTKSHARP... " >&6; }
 
 if test -n "$GTKSHARP_CFLAGS"; then
     pkg_cv_GTKSHARP_CFLAGS="$GTKSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= \$GTKSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= \$GTKSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-2.0 >= $GTKSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_CFLAGS=`$PKG_CONFIG --cflags "gtk-sharp-2.0 >= $GTKSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18267,11 +17107,11 @@ if test -n "$GTKSHARP_LIBS"; then
     pkg_cv_GTKSHARP_LIBS="$GTKSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= \$GTKSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= \$GTKSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-2.0 >= $GTKSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_LIBS=`$PKG_CONFIG --libs "gtk-sharp-2.0 >= $GTKSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18283,6 +17123,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18297,7 +17139,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GTKSHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gtk-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
+	as_fn_error $? "Package requirements (gtk-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
 
 $GTKSHARP_PKG_ERRORS
 
@@ -18306,24 +17148,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GTKSHARP_CFLAGS
 and GTKSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gtk-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
-
-$GTKSHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GTKSHARP_CFLAGS
-and GTKSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18332,41 +17163,30 @@ and GTKSHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GTKSHARP_CFLAGS
-and GTKSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GTKSHARP_CFLAGS=$pkg_cv_GTKSHARP_CFLAGS
 	GTKSHARP_LIBS=$pkg_cv_GTKSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GLIBSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIBSHARP" >&5
 $as_echo_n "checking for GLIBSHARP... " >&6; }
 
 if test -n "$GLIBSHARP_CFLAGS"; then
     pkg_cv_GLIBSHARP_CFLAGS="$GLIBSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= \$GTKSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= \$GTKSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-sharp-2.0 >= $GTKSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIBSHARP_CFLAGS=`$PKG_CONFIG --cflags "glib-sharp-2.0 >= $GTKSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18378,11 +17198,11 @@ if test -n "$GLIBSHARP_LIBS"; then
     pkg_cv_GLIBSHARP_LIBS="$GLIBSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= \$GTKSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= \$GTKSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-sharp-2.0 >= $GTKSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIBSHARP_LIBS=`$PKG_CONFIG --libs "glib-sharp-2.0 >= $GTKSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18394,6 +17214,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18408,18 +17230,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GLIBSHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (glib-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
-
-$GLIBSHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GLIBSHARP_CFLAGS
-and GLIBSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (glib-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
+	as_fn_error $? "Package requirements (glib-sharp-2.0 >= $GTKSHARP_REQUIRED) were not met:
 
 $GLIBSHARP_PKG_ERRORS
 
@@ -18428,23 +17239,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GLIBSHARP_CFLAGS
 and GLIBSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GLIBSHARP_CFLAGS
-and GLIBSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18453,31 +17254,30 @@ and GLIBSHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GLIBSHARP_CFLAGS=$pkg_cv_GLIBSHARP_CFLAGS
 	GLIBSHARP_LIBS=$pkg_cv_GLIBSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GLIBSHARP_2_12_7" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIBSHARP_2_12_7" >&5
 $as_echo_n "checking for GLIBSHARP_2_12_7... " >&6; }
 
 if test -n "$GLIBSHARP_2_12_7_CFLAGS"; then
     pkg_cv_GLIBSHARP_2_12_7_CFLAGS="$GLIBSHARP_2_12_7_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= 2.12.7\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= 2.12.7\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-sharp-2.0 >= 2.12.7") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIBSHARP_2_12_7_CFLAGS=`$PKG_CONFIG --cflags "glib-sharp-2.0 >= 2.12.7" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18489,11 +17289,11 @@ if test -n "$GLIBSHARP_2_12_7_LIBS"; then
     pkg_cv_GLIBSHARP_2_12_7_LIBS="$GLIBSHARP_2_12_7_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= 2.12.7\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-sharp-2.0 >= 2.12.7\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-sharp-2.0 >= 2.12.7") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GLIBSHARP_2_12_7_LIBS=`$PKG_CONFIG --libs "glib-sharp-2.0 >= 2.12.7" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18505,6 +17305,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18519,15 +17321,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GLIBSHARP_2_12_7_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                HAVE_GLIBSHARP_2_12_7=no
+	HAVE_GLIBSHARP_2_12_7=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	HAVE_GLIBSHARP_2_12_7=no
 else
 	GLIBSHARP_2_12_7_CFLAGS=$pkg_cv_GLIBSHARP_2_12_7_CFLAGS
 	GLIBSHARP_2_12_7_LIBS=$pkg_cv_GLIBSHARP_2_12_7_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	HAVE_GLIBSHARP_2_12_7=yes
 fi
@@ -18542,18 +17344,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GTKSHARP_A11Y" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKSHARP_A11Y" >&5
 $as_echo_n "checking for GTKSHARP_A11Y... " >&6; }
 
 if test -n "$GTKSHARP_A11Y_CFLAGS"; then
     pkg_cv_GTKSHARP_A11Y_CFLAGS="$GTKSHARP_A11Y_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= 2.12.10\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= 2.12.10\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-2.0 >= 2.12.10") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_A11Y_CFLAGS=`$PKG_CONFIG --cflags "gtk-sharp-2.0 >= 2.12.10" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18565,11 +17367,11 @@ if test -n "$GTKSHARP_A11Y_LIBS"; then
     pkg_cv_GTKSHARP_A11Y_LIBS="$GTKSHARP_A11Y_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= 2.12.10\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-sharp-2.0 >= 2.12.10\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gtk-sharp-2.0 >= 2.12.10") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GTKSHARP_A11Y_LIBS=`$PKG_CONFIG --libs "gtk-sharp-2.0 >= 2.12.10" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18581,6 +17383,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18595,15 +17399,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GTKSHARP_A11Y_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                gtksharp_with_a11y=no
+	gtksharp_with_a11y=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	gtksharp_with_a11y=no
 else
 	GTKSHARP_A11Y_CFLAGS=$pkg_cv_GTKSHARP_A11Y_CFLAGS
 	GTKSHARP_A11Y_LIBS=$pkg_cv_GTKSHARP_A11Y_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	gtksharp_with_a11y=yes
 fi
@@ -18624,18 +17428,18 @@ fi
 		enable_osx="yes"
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for IGEMACINTEGRATION" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for IGEMACINTEGRATION" >&5
 $as_echo_n "checking for IGEMACINTEGRATION... " >&6; }
 
 if test -n "$IGEMACINTEGRATION_CFLAGS"; then
     pkg_cv_IGEMACINTEGRATION_CFLAGS="$IGEMACINTEGRATION_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ige-mac-integration >= 0.8.6\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ige-mac-integration >= 0.8.6\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ige-mac-integration >= 0.8.6") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_IGEMACINTEGRATION_CFLAGS=`$PKG_CONFIG --cflags "ige-mac-integration >= 0.8.6" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18647,11 +17451,11 @@ if test -n "$IGEMACINTEGRATION_LIBS"; then
     pkg_cv_IGEMACINTEGRATION_LIBS="$IGEMACINTEGRATION_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ige-mac-integration >= 0.8.6\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ige-mac-integration >= 0.8.6\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ige-mac-integration >= 0.8.6") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_IGEMACINTEGRATION_LIBS=`$PKG_CONFIG --libs "ige-mac-integration >= 0.8.6" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18663,6 +17467,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18677,7 +17483,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$IGEMACINTEGRATION_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (ige-mac-integration >= 0.8.6) were not met:
+	as_fn_error $? "Package requirements (ige-mac-integration >= 0.8.6) were not met:
 
 $IGEMACINTEGRATION_PKG_ERRORS
 
@@ -18686,24 +17492,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables IGEMACINTEGRATION_CFLAGS
 and IGEMACINTEGRATION_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (ige-mac-integration >= 0.8.6) were not met:
-
-$IGEMACINTEGRATION_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables IGEMACINTEGRATION_CFLAGS
-and IGEMACINTEGRATION_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18712,24 +17507,13 @@ and IGEMACINTEGRATION_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables IGEMACINTEGRATION_CFLAGS
-and IGEMACINTEGRATION_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	IGEMACINTEGRATION_CFLAGS=$pkg_cv_IGEMACINTEGRATION_CFLAGS
 	IGEMACINTEGRATION_LIBS=$pkg_cv_IGEMACINTEGRATION_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 	fi
 	 if test "x$enable_osx" = "xyes"; then
@@ -18744,18 +17528,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for SQLITE" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SQLITE" >&5
 $as_echo_n "checking for SQLITE... " >&6; }
 
 if test -n "$SQLITE_CFLAGS"; then
     pkg_cv_SQLITE_CFLAGS="$SQLITE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.4\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.4\""; } >&5
   ($PKG_CONFIG --exists --print-errors "sqlite3 >= 3.4") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_SQLITE_CFLAGS=`$PKG_CONFIG --cflags "sqlite3 >= 3.4" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18767,11 +17551,11 @@ if test -n "$SQLITE_LIBS"; then
     pkg_cv_SQLITE_LIBS="$SQLITE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.4\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.4\""; } >&5
   ($PKG_CONFIG --exists --print-errors "sqlite3 >= 3.4") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_SQLITE_LIBS=`$PKG_CONFIG --libs "sqlite3 >= 3.4" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18783,6 +17567,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18797,7 +17583,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$SQLITE_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (sqlite3 >= 3.4) were not met:
+	as_fn_error $? "Package requirements (sqlite3 >= 3.4) were not met:
 
 $SQLITE_PKG_ERRORS
 
@@ -18806,34 +17592,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables SQLITE_CFLAGS
 and SQLITE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (sqlite3 >= 3.4) were not met:
-
-$SQLITE_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables SQLITE_CFLAGS
-and SQLITE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables SQLITE_CFLAGS
-and SQLITE_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18842,18 +17607,17 @@ and SQLITE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	SQLITE_CFLAGS=$pkg_cv_SQLITE_CFLAGS
 	SQLITE_LIBS=$pkg_cv_SQLITE_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 # Check whether --enable-gnome was given.
-if test "${enable_gnome+set}" = set; then
+if test "${enable_gnome+set}" = set; then :
   enableval=$enable_gnome;
 else
   enable_gnome="yes"
@@ -18865,18 +17629,18 @@ if test "x$enable_gnome" = "xyes"; then
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GCONFSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GCONFSHARP" >&5
 $as_echo_n "checking for GCONFSHARP... " >&6; }
 
 if test -n "$GCONFSHARP_CFLAGS"; then
     pkg_cv_GCONFSHARP_CFLAGS="$GCONFSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gconf-sharp-2.0 >= \$GNOMESHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gconf-sharp-2.0 >= \$GNOMESHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GCONFSHARP_CFLAGS=`$PKG_CONFIG --cflags "gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18888,11 +17652,11 @@ if test -n "$GCONFSHARP_LIBS"; then
     pkg_cv_GCONFSHARP_LIBS="$GCONFSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gconf-sharp-2.0 >= \$GNOMESHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gconf-sharp-2.0 >= \$GNOMESHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GCONFSHARP_LIBS=`$PKG_CONFIG --libs "gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -18904,6 +17668,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18918,7 +17684,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GCONFSHARP_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED) were not met:
+	as_fn_error $? "Package requirements (gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED) were not met:
 
 $GCONFSHARP_PKG_ERRORS
 
@@ -18927,34 +17693,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables GCONFSHARP_CFLAGS
 and GCONFSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (gconf-sharp-2.0 >= $GNOMESHARP_REQUIRED) were not met:
-
-$GCONFSHARP_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables GCONFSHARP_CFLAGS
-and GCONFSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables GCONFSHARP_CFLAGS
-and GCONFSHARP_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -18963,22 +17708,21 @@ and GCONFSHARP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	GCONFSHARP_CFLAGS=$pkg_cv_GCONFSHARP_CFLAGS
 	GCONFSHARP_LIBS=$pkg_cv_GCONFSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 
 	# Extract the first word of "gconftool-2", so it can be a program name with args.
 set dummy gconftool-2; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_GCONFTOOL+set}" = set; then
+if test "${ac_cv_path_GCONFTOOL+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $GCONFTOOL in
@@ -18991,14 +17735,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_GCONFTOOL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_GCONFTOOL" && ac_cv_path_GCONFTOOL="no"
@@ -19007,10 +17751,10 @@ esac
 fi
 GCONFTOOL=$ac_cv_path_GCONFTOOL
 if test -n "$GCONFTOOL"; then
-  { $as_echo "$as_me:$LINENO: result: $GCONFTOOL" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCONFTOOL" >&5
 $as_echo "$GCONFTOOL" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -19024,13 +17768,13 @@ fi
 
 
 # Check whether --with-gconf-source was given.
-if test "${with_gconf_source+set}" = set; then
+if test "${with_gconf_source+set}" = set; then :
   withval=$with_gconf_source; GCONF_SCHEMA_CONFIG_SOURCE="$withval"
 fi
 
 
 
-  { $as_echo "$as_me:$LINENO: result: Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&5
 $as_echo "Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&6; }
 
   if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then
@@ -19039,22 +17783,20 @@ $as_echo "Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installatio
 
 
 # Check whether --with-gconf-schema-file-dir was given.
-if test "${with_gconf_schema_file_dir+set}" = set; then
+if test "${with_gconf_schema_file_dir+set}" = set; then :
   withval=$with_gconf_schema_file_dir; GCONF_SCHEMA_FILE_DIR="$withval"
 fi
 
 
 
-  { $as_echo "$as_me:$LINENO: result: Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&5
 $as_echo "Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&6; }
 
   # Check whether --enable-schemas-install was given.
-if test "${enable_schemas_install+set}" = set; then
+if test "${enable_schemas_install+set}" = set; then :
   enableval=$enable_schemas_install; case ${enableval} in
        yes|no) ;;
-       *) { { $as_echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-schemas-install" >&5
-$as_echo "$as_me: error: bad value ${enableval} for --enable-schemas-install" >&2;}
-   { (exit 1); exit 1; }; } ;;
+       *) as_fn_error $? "bad value ${enableval} for --enable-schemas-install" "$LINENO" 5  ;;
       esac
 fi
 
@@ -19098,7 +17840,7 @@ fi
 	LIBMTP_REQUIRED=0.3.0
 
 	# Check whether --enable-mtp was given.
-if test "${enable_mtp+set}" = set; then
+if test "${enable_mtp+set}" = set; then :
   enableval=$enable_mtp;
 else
   enable_mtp="yes"
@@ -19109,18 +17851,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for LIBMTP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBMTP" >&5
 $as_echo_n "checking for LIBMTP... " >&6; }
 
 if test -n "$LIBMTP_CFLAGS"; then
     pkg_cv_LIBMTP_CFLAGS="$LIBMTP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libmtp >= \$LIBMTP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmtp >= \$LIBMTP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libmtp >= $LIBMTP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBMTP_CFLAGS=`$PKG_CONFIG --cflags "libmtp >= $LIBMTP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19132,11 +17874,11 @@ if test -n "$LIBMTP_LIBS"; then
     pkg_cv_LIBMTP_LIBS="$LIBMTP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libmtp >= \$LIBMTP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmtp >= \$LIBMTP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libmtp >= $LIBMTP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBMTP_LIBS=`$PKG_CONFIG --libs "libmtp >= $LIBMTP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19148,6 +17890,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19162,126 +17906,29 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBMTP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_libmtp=no
+	enable_libmtp=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_libmtp=no
 else
 	LIBMTP_CFLAGS=$pkg_cv_LIBMTP_CFLAGS
 	LIBMTP_LIBS=$pkg_cv_LIBMTP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_libmtp="$enable_libmtp"
 fi
 
 	if test "x$enable_mtp" = "xyes" -a "x$enable_libmtp" = "xno"; then
-		{ { $as_echo "$as_me:$LINENO: error: libmtp was not found or is not up to date. Please install libmtp of at least version $LIBMTP_REQUIRED, or disable MTP support by passing --disable-mtp" >&5
-$as_echo "$as_me: error: libmtp was not found or is not up to date. Please install libmtp of at least version $LIBMTP_REQUIRED, or disable MTP support by passing --disable-mtp" >&2;}
-   { (exit 1); exit 1; }; }
+		as_fn_error $? "libmtp was not found or is not up to date. Please install libmtp of at least version $LIBMTP_REQUIRED, or disable MTP support by passing --disable-mtp" "$LINENO" 5
 	fi
 
 	if test "x$enable_libmtp" = "xyes"; then
 		LIBMTP_SO_MAP=$(basename $(find $($PKG_CONFIG --variable=libdir libmtp) -maxdepth 1 -regex '.*libmtp\.so\.[0-9][0-9]*$' | sort | tail -n 1))
 
-		{ $as_echo "$as_me:$LINENO: checking for struct LIBMTP_track_struct.modificationdate" >&5
-$as_echo_n "checking for struct LIBMTP_track_struct.modificationdate... " >&6; }
-if test "${ac_cv_member_struct_LIBMTP_track_struct_modificationdate+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libmtp.h>
-
-int
-main ()
-{
-static struct LIBMTP_track_struct ac_aggr;
-if (ac_aggr.modificationdate)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_LIBMTP_track_struct_modificationdate=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libmtp.h>
-
-int
-main ()
-{
-static struct LIBMTP_track_struct ac_aggr;
-if (sizeof ac_aggr.modificationdate)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_LIBMTP_track_struct_modificationdate=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_member_struct_LIBMTP_track_struct_modificationdate=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_LIBMTP_track_struct_modificationdate" >&5
-$as_echo "$ac_cv_member_struct_LIBMTP_track_struct_modificationdate" >&6; }
-if test "x$ac_cv_member_struct_LIBMTP_track_struct_modificationdate" = x""yes; then
+		ac_fn_c_check_member "$LINENO" "struct LIBMTP_track_struct" "modificationdate" "ac_cv_member_struct_LIBMTP_track_struct_modificationdate" "#include <libmtp.h>
+"
+if test "x$ac_cv_member_struct_LIBMTP_track_struct_modificationdate" = x""yes; then :
   LIBMTP_HAS_MODDATE=yes
 else
   LIBMTP_HAS_MODDATE=no
@@ -19317,352 +17964,26 @@ fi
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:$LINENO: checking size of time_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of time_t" >&5
 $as_echo_n "checking size of time_t... " >&6; }
-if test "${ac_cv_sizeof_time_t+set}" = set; then
+if test "${ac_cv_sizeof_time_t+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array [1 - 2 * !(((long int) (sizeof (time_t))) >= 0)];
-test_array [0] = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array [1 - 2 * !(((long int) (sizeof (time_t))) <= $ac_mid)];
-test_array [0] = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_hi=$ac_mid; break
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_lo=`expr $ac_mid + 1`
-			if test $ac_lo -le $ac_mid; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array [1 - 2 * !(((long int) (sizeof (time_t))) < 0)];
-test_array [0] = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array [1 - 2 * !(((long int) (sizeof (time_t))) >= $ac_mid)];
-test_array [0] = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_lo=$ac_mid; break
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_hi=`expr '(' $ac_mid ')' - 1`
-			if test $ac_mid -le $ac_hi; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			ac_mid=`expr 2 '*' $ac_mid`
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_lo= ac_hi=
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array [1 - 2 * !(((long int) (sizeof (time_t))) <= $ac_mid)];
-test_array [0] = 0
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (time_t))" "ac_cv_sizeof_time_t"        "$ac_includes_default"; then :
 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_hi=$ac_mid
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_time_t=$ac_lo;;
-'') if test "$ac_cv_type_time_t" = yes; then
-     { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+  if test "$ac_cv_type_time_t" = yes; then
+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (time_t)
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute sizeof (time_t)
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }; }
-   else
-     ac_cv_sizeof_time_t=0
-   fi ;;
-esac
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-static long int longval () { return (long int) (sizeof (time_t)); }
-static unsigned long int ulongval () { return (long int) (sizeof (time_t)); }
-#include <stdio.h>
-#include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (((long int) (sizeof (time_t))) < 0)
-    {
-      long int i = longval ();
-      if (i != ((long int) (sizeof (time_t))))
-	return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ((long int) (sizeof (time_t))))
-	return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  ac_cv_sizeof_time_t=`cat conftest.val`
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-if test "$ac_cv_type_time_t" = yes; then
-     { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (time_t)
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute sizeof (time_t)
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }; }
+as_fn_error 77 "cannot compute sizeof (time_t)
+See \`config.log' for more details" "$LINENO" 5 ; }
    else
      ac_cv_sizeof_time_t=0
    fi
 fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.val
+
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_time_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_time_t" >&5
 $as_echo "$ac_cv_sizeof_time_t" >&6; }
 
 
@@ -19685,7 +18006,7 @@ fi
 	LIBGPODSHARP_REQUIRED=0.1
 
 	# Check whether --enable-appledevice was given.
-if test "${enable_appledevice+set}" = set; then
+if test "${enable_appledevice+set}" = set; then :
   enableval=$enable_appledevice;
 else
   enable_appledevice="yes"
@@ -19696,18 +18017,18 @@ fi
 		has_libgpod=no
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for LIBGPODSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBGPODSHARP" >&5
 $as_echo_n "checking for LIBGPODSHARP... " >&6; }
 
 if test -n "$LIBGPODSHARP_CFLAGS"; then
     pkg_cv_LIBGPODSHARP_CFLAGS="$LIBGPODSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgpod-sharp >= \$LIBGPODSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libgpod-sharp >= \$LIBGPODSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libgpod-sharp >= $LIBGPODSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBGPODSHARP_CFLAGS=`$PKG_CONFIG --cflags "libgpod-sharp >= $LIBGPODSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19719,11 +18040,11 @@ if test -n "$LIBGPODSHARP_LIBS"; then
     pkg_cv_LIBGPODSHARP_LIBS="$LIBGPODSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgpod-sharp >= \$LIBGPODSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libgpod-sharp >= \$LIBGPODSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libgpod-sharp >= $LIBGPODSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_LIBGPODSHARP_LIBS=`$PKG_CONFIG --libs "libgpod-sharp >= $LIBGPODSHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19735,6 +18056,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19749,22 +18072,20 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBGPODSHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                has_libgpod=no
+	has_libgpod=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	has_libgpod=no
 else
 	LIBGPODSHARP_CFLAGS=$pkg_cv_LIBGPODSHARP_CFLAGS
 	LIBGPODSHARP_LIBS=$pkg_cv_LIBGPODSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	has_libgpod=yes
 fi
 		if test "x$has_libgpod" = "xno"; then
-			{ { $as_echo "$as_me:$LINENO: error: libgpod-sharp was not found or is not up to date. Please install libgpod-sharp of at least version $LIBGPODSHARP_REQUIRED, or disable Apple device support by passing --disable-appledevice" >&5
-$as_echo "$as_me: error: libgpod-sharp was not found or is not up to date. Please install libgpod-sharp of at least version $LIBGPODSHARP_REQUIRED, or disable Apple device support by passing --disable-appledevice" >&2;}
-   { (exit 1); exit 1; }; }
+			as_fn_error $? "libgpod-sharp was not found or is not up to date. Please install libgpod-sharp of at least version $LIBGPODSHARP_REQUIRED, or disable Apple device support by passing --disable-appledevice" "$LINENO" 5
 		fi
 	fi
 
@@ -19789,7 +18110,7 @@ fi
 	IPODSHARP_REQUIRED=0.8.5
 
 	# Check whether --enable-ipod was given.
-if test "${enable_ipod+set}" = set; then
+if test "${enable_ipod+set}" = set; then :
   enableval=$enable_ipod;
 else
   enable_ipod="yes"
@@ -19800,20 +18121,20 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for IPODSHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for IPODSHARP" >&5
 $as_echo_n "checking for IPODSHARP... " >&6; }
 
 if test -n "$IPODSHARP_CFLAGS"; then
     pkg_cv_IPODSHARP_CFLAGS="$IPODSHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ipod-sharp >= \$IPODSHARP_REQUIRED \\
-		ipod-sharp-ui >= \$IPODSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ipod-sharp >= \$IPODSHARP_REQUIRED \\
+		ipod-sharp-ui >= \$IPODSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ipod-sharp >= $IPODSHARP_REQUIRED \
 		ipod-sharp-ui >= $IPODSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_IPODSHARP_CFLAGS=`$PKG_CONFIG --cflags "ipod-sharp >= $IPODSHARP_REQUIRED \
 		ipod-sharp-ui >= $IPODSHARP_REQUIRED" 2>/dev/null`
 else
@@ -19826,13 +18147,13 @@ if test -n "$IPODSHARP_LIBS"; then
     pkg_cv_IPODSHARP_LIBS="$IPODSHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"ipod-sharp >= \$IPODSHARP_REQUIRED \\
-		ipod-sharp-ui >= \$IPODSHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ipod-sharp >= \$IPODSHARP_REQUIRED \\
+		ipod-sharp-ui >= \$IPODSHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "ipod-sharp >= $IPODSHARP_REQUIRED \
 		ipod-sharp-ui >= $IPODSHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_IPODSHARP_LIBS=`$PKG_CONFIG --libs "ipod-sharp >= $IPODSHARP_REQUIRED \
 		ipod-sharp-ui >= $IPODSHARP_REQUIRED" 2>/dev/null`
 else
@@ -19845,6 +18166,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19861,23 +18184,21 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$IPODSHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_ipodsharp=no
+	enable_ipodsharp=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_ipodsharp=no
 else
 	IPODSHARP_CFLAGS=$pkg_cv_IPODSHARP_CFLAGS
 	IPODSHARP_LIBS=$pkg_cv_IPODSHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_ipodsharp="$enable_ipodsharp"
 fi
 
 	if test "x$enable_ipod" = "xyes" -a "x$enable_ipodsharp" = "xno"; then
-		{ { $as_echo "$as_me:$LINENO: error: ipod-sharp was not found or is not up to date. Please install ipod-sharp of at least version $IPODSHARP_REQUIRED, or disable iPod support by passing --disable-ipod" >&5
-$as_echo "$as_me: error: ipod-sharp was not found or is not up to date. Please install ipod-sharp of at least version $IPODSHARP_REQUIRED, or disable iPod support by passing --disable-ipod" >&2;}
-   { (exit 1); exit 1; }; }
+		as_fn_error $? "ipod-sharp was not found or is not up to date. Please install ipod-sharp of at least version $IPODSHARP_REQUIRED, or disable iPod support by passing --disable-ipod" "$LINENO" 5
 	fi
 
 	if test "x$enable_ipodsharp" = "xyes"; then
@@ -19903,7 +18224,7 @@ fi
 	KARMASHARP_REQUIRED=0.0.5
 
 	# Check whether --enable-karma was given.
-if test "${enable_karma+set}" = set; then
+if test "${enable_karma+set}" = set; then :
   enableval=$enable_karma;
 else
   enable_karma="yes"
@@ -19914,18 +18235,18 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for KARMASHARP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for KARMASHARP" >&5
 $as_echo_n "checking for KARMASHARP... " >&6; }
 
 if test -n "$KARMASHARP_CFLAGS"; then
     pkg_cv_KARMASHARP_CFLAGS="$KARMASHARP_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"karma-sharp >= \$KARMASHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"karma-sharp >= \$KARMASHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "karma-sharp >= $KARMASHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_KARMASHARP_CFLAGS=`$PKG_CONFIG --cflags "karma-sharp >= $KARMASHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19937,11 +18258,11 @@ if test -n "$KARMASHARP_LIBS"; then
     pkg_cv_KARMASHARP_LIBS="$KARMASHARP_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"karma-sharp >= \$KARMASHARP_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"karma-sharp >= \$KARMASHARP_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "karma-sharp >= $KARMASHARP_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_KARMASHARP_LIBS=`$PKG_CONFIG --libs "karma-sharp >= $KARMASHARP_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -19953,6 +18274,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19967,15 +18290,15 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$KARMASHARP_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                enable_karmasharp=no
+	enable_karmasharp=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	enable_karmasharp=no
 else
 	KARMASHARP_CFLAGS=$pkg_cv_KARMASHARP_CFLAGS
 	KARMASHARP_LIBS=$pkg_cv_KARMASHARP_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	enable_karmasharp="$enable_karmasharp"
 fi
@@ -20000,7 +18323,7 @@ fi
 	MZC_REQUIRED=0.7.3
 
 	# Check whether --enable-daap was given.
-if test "${enable_daap+set}" = set; then
+if test "${enable_daap+set}" = set; then :
   enableval=$enable_daap;
 else
   enable_daap="yes"
@@ -20010,18 +18333,18 @@ fi
 	if test "x$enable_daap" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_ZEROCONF" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_ZEROCONF" >&5
 $as_echo_n "checking for MONO_ZEROCONF... " >&6; }
 
 if test -n "$MONO_ZEROCONF_CFLAGS"; then
     pkg_cv_MONO_ZEROCONF_CFLAGS="$MONO_ZEROCONF_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-zeroconf >= $MZC_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ZEROCONF_CFLAGS=`$PKG_CONFIG --cflags "mono-zeroconf >= $MZC_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20033,11 +18356,11 @@ if test -n "$MONO_ZEROCONF_LIBS"; then
     pkg_cv_MONO_ZEROCONF_LIBS="$MONO_ZEROCONF_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-zeroconf >= $MZC_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ZEROCONF_LIBS=`$PKG_CONFIG --libs "mono-zeroconf >= $MZC_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20049,6 +18372,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -20063,18 +18388,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_ZEROCONF_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
-
-$MONO_ZEROCONF_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
-and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
+	as_fn_error $? "Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
 
 $MONO_ZEROCONF_PKG_ERRORS
 
@@ -20083,13 +18397,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
 and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -20098,24 +18412,13 @@ and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
-and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONO_ZEROCONF_CFLAGS=$pkg_cv_MONO_ZEROCONF_CFLAGS
 	MONO_ZEROCONF_LIBS=$pkg_cv_MONO_ZEROCONF_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 		 if true; then
@@ -20142,7 +18445,7 @@ fi
 	MZC_REQUIRED=0.7.3
 
 	# Check whether --enable-remote_audio was given.
-if test "${enable_remote_audio+set}" = set; then
+if test "${enable_remote_audio+set}" = set; then :
   enableval=$enable_remote_audio;
 else
   enable_remote_audio="no"
@@ -20152,18 +18455,18 @@ fi
 	if test "x$enable_remote_audio" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONO_ZEROCONF" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONO_ZEROCONF" >&5
 $as_echo_n "checking for MONO_ZEROCONF... " >&6; }
 
 if test -n "$MONO_ZEROCONF_CFLAGS"; then
     pkg_cv_MONO_ZEROCONF_CFLAGS="$MONO_ZEROCONF_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-zeroconf >= $MZC_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ZEROCONF_CFLAGS=`$PKG_CONFIG --cflags "mono-zeroconf >= $MZC_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20175,11 +18478,11 @@ if test -n "$MONO_ZEROCONF_LIBS"; then
     pkg_cv_MONO_ZEROCONF_LIBS="$MONO_ZEROCONF_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mono-zeroconf >= \$MZC_REQUIRED\""; } >&5
   ($PKG_CONFIG --exists --print-errors "mono-zeroconf >= $MZC_REQUIRED") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONO_ZEROCONF_LIBS=`$PKG_CONFIG --libs "mono-zeroconf >= $MZC_REQUIRED" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20191,6 +18494,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -20205,7 +18510,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_ZEROCONF_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
+	as_fn_error $? "Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
 
 $MONO_ZEROCONF_PKG_ERRORS
 
@@ -20214,24 +18519,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
 and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (mono-zeroconf >= $MZC_REQUIRED) were not met:
-
-$MONO_ZEROCONF_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
-and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -20240,24 +18534,13 @@ and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONO_ZEROCONF_CFLAGS
-and MONO_ZEROCONF_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONO_ZEROCONF_CFLAGS=$pkg_cv_MONO_ZEROCONF_CFLAGS
 	MONO_ZEROCONF_LIBS=$pkg_cv_MONO_ZEROCONF_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi
 
 		 if true; then
@@ -20282,7 +18565,7 @@ fi
 
 
 	# Check whether --enable-torrent was given.
-if test "${enable_torrent+set}" = set; then
+if test "${enable_torrent+set}" = set; then :
   enableval=$enable_torrent;
 else
   enable_torrent="no"
@@ -20292,18 +18575,18 @@ fi
 	if test "x$enable_torrent" = "xyes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for MONOTORRENT_DBUS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MONOTORRENT_DBUS" >&5
 $as_echo_n "checking for MONOTORRENT_DBUS... " >&6; }
 
 if test -n "$MONOTORRENT_DBUS_CFLAGS"; then
     pkg_cv_MONOTORRENT_DBUS_CFLAGS="$MONOTORRENT_DBUS_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"monotorrent-dbus >= 0.2\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"monotorrent-dbus >= 0.2\""; } >&5
   ($PKG_CONFIG --exists --print-errors "monotorrent-dbus >= 0.2") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONOTORRENT_DBUS_CFLAGS=`$PKG_CONFIG --cflags "monotorrent-dbus >= 0.2" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20315,11 +18598,11 @@ if test -n "$MONOTORRENT_DBUS_LIBS"; then
     pkg_cv_MONOTORRENT_DBUS_LIBS="$MONOTORRENT_DBUS_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"monotorrent-dbus >= 0.2\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"monotorrent-dbus >= 0.2\""; } >&5
   ($PKG_CONFIG --exists --print-errors "monotorrent-dbus >= 0.2") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_MONOTORRENT_DBUS_LIBS=`$PKG_CONFIG --libs "monotorrent-dbus >= 0.2" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20331,6 +18614,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -20345,18 +18630,7 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONOTORRENT_DBUS_PKG_ERRORS" >&5
 
-	{ { $as_echo "$as_me:$LINENO: error: Package requirements (monotorrent-dbus >= 0.2) were not met:
-
-$MONOTORRENT_DBUS_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables MONOTORRENT_DBUS_CFLAGS
-and MONOTORRENT_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&5
-$as_echo "$as_me: error: Package requirements (monotorrent-dbus >= 0.2) were not met:
+	as_fn_error $? "Package requirements (monotorrent-dbus >= 0.2) were not met:
 
 $MONOTORRENT_DBUS_PKG_ERRORS
 
@@ -20365,13 +18639,13 @@ installed software in a non-standard prefix.
 
 Alternatively, you may set the environment variables MONOTORRENT_DBUS_CFLAGS
 and MONOTORRENT_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-" >&2;}
-   { (exit 1); exit 1; }; }
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-	{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old.  Make sure it
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
@@ -20380,24 +18654,13 @@ and MONOTORRENT_DBUS_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables MONOTORRENT_DBUS_CFLAGS
-and MONOTORRENT_DBUS_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }; }
+See \`config.log' for more details" "$LINENO" 5 ; }
 else
 	MONOTORRENT_DBUS_CFLAGS=$pkg_cv_MONOTORRENT_DBUS_CFLAGS
 	MONOTORRENT_DBUS_LIBS=$pkg_cv_MONOTORRENT_DBUS_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	:
+
 fi;
 		asms="`$PKG_CONFIG --variable=Libraries monotorrent` `$PKG_CONFIG --variable=Libraries monotorrent-dbus`"
 		for asm in $asms; do
@@ -20427,7 +18690,7 @@ fi
 
 
 	# Check whether --enable-meego was given.
-if test "${enable_meego+set}" = set; then
+if test "${enable_meego+set}" = set; then :
   enableval=$enable_meego;
 else
   enable_meego="no"
@@ -20457,7 +18720,7 @@ fi
 
 ENABLE_GAPLESS="no"
 # Check whether --enable-gapless-playback was given.
-if test "${enable_gapless_playback+set}" = set; then
+if test "${enable_gapless_playback+set}" = set; then :
   enableval=$enable_gapless_playback; enable_gapless=$enableval
 else
   enable_gapless=auto
@@ -20466,18 +18729,18 @@ fi
 if test "x$enable_gapless" != "xno" ; then
 
 pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GST_PLUGINS_BASE" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST_PLUGINS_BASE" >&5
 $as_echo_n "checking for GST_PLUGINS_BASE... " >&6; }
 
 if test -n "$GST_PLUGINS_BASE_CFLAGS"; then
     pkg_cv_GST_PLUGINS_BASE_CFLAGS="$GST_PLUGINS_BASE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-plugins-base-0.10 > 0.10.25.2\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-plugins-base-0.10 > 0.10.25.2\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-plugins-base-0.10 > 0.10.25.2") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_PLUGINS_BASE_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-plugins-base-0.10 > 0.10.25.2" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20489,11 +18752,11 @@ if test -n "$GST_PLUGINS_BASE_LIBS"; then
     pkg_cv_GST_PLUGINS_BASE_LIBS="$GST_PLUGINS_BASE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-plugins-base-0.10 > 0.10.25.2\"") >&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-plugins-base-0.10 > 0.10.25.2\""; } >&5
   ($PKG_CONFIG --exists --print-errors "gstreamer-plugins-base-0.10 > 0.10.25.2") 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
   pkg_cv_GST_PLUGINS_BASE_LIBS=`$PKG_CONFIG --libs "gstreamer-plugins-base-0.10 > 0.10.25.2" 2>/dev/null`
 else
   pkg_failed=yes
@@ -20505,6 +18768,8 @@ fi
 
 
 if test $pkg_failed = yes; then
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -20519,22 +18784,20 @@ fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GST_PLUGINS_BASE_PKG_ERRORS" >&5
 
-	{ $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-                ENABLE_GAPLESS=no
+	ENABLE_GAPLESS=no
 elif test $pkg_failed = untried; then
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 	ENABLE_GAPLESS=no
 else
 	GST_PLUGINS_BASE_CFLAGS=$pkg_cv_GST_PLUGINS_BASE_CFLAGS
 	GST_PLUGINS_BASE_LIBS=$pkg_cv_GST_PLUGINS_BASE_LIBS
-        { $as_echo "$as_me:$LINENO: result: yes" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 	ENABLE_GAPLESS=yes
 fi
    	if test "x$enable_gapless" == "xyes" -a "x$ENABLE_GAPLESS" == "xno" ; then
-	   	{ { $as_echo "$as_me:$LINENO: error: Gapless playback requires gstreamer-plugins-base > 0.10.25.2" >&5
-$as_echo "$as_me: error: Gapless playback requires gstreamer-plugins-base > 0.10.25.2" >&2;}
-   { (exit 1); exit 1; }; }
+	   	as_fn_error $? "Gapless playback requires gstreamer-plugins-base > 0.10.25.2" "$LINENO" 5
 	fi
 fi
  if test "x$ENABLE_GAPLESS" = "xyes"; then
@@ -20556,151 +18819,12 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
-
-for ac_header in locale.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ---------------------------------------------------------------------- ##
-## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=banshee ##
-## ---------------------------------------------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+   for ac_header in locale.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default"
+if test "x$ac_cv_header_locale_h" = x""yes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_LOCALE_H 1
 _ACEOF
 
 fi
@@ -20708,16 +18832,12 @@ fi
 done
 
     if test $ac_cv_header_locale_h = yes; then
-    { $as_echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
 $as_echo_n "checking for LC_MESSAGES... " >&6; }
-if test "${am_cv_val_LC_MESSAGES+set}" = set; then
+if test "${am_cv_val_LC_MESSAGES+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <locale.h>
 int
@@ -20728,46 +18848,19 @@ return LC_MESSAGES
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   am_cv_val_LC_MESSAGES=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	am_cv_val_LC_MESSAGES=no
+  am_cv_val_LC_MESSAGES=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
 $as_echo "$am_cv_val_LC_MESSAGES" >&6; }
     if test $am_cv_val_LC_MESSAGES = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_LC_MESSAGES 1
-_ACEOF
+$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h
 
     fi
   fi
@@ -20780,155 +18873,20 @@ _ACEOF
     XGETTEXT=:
     INTLLIBS=
 
-    if test "${ac_cv_header_libintl_h+set}" = set; then
-  { $as_echo "$as_me:$LINENO: checking for libintl.h" >&5
-$as_echo_n "checking for libintl.h... " >&6; }
-if test "${ac_cv_header_libintl_h+set}" = set; then
-  $as_echo_n "(cached) " >&6
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
-$as_echo "$ac_cv_header_libintl_h" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking libintl.h usability" >&5
-$as_echo_n "checking libintl.h usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <libintl.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking libintl.h presence" >&5
-$as_echo_n "checking libintl.h presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libintl.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: libintl.h:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: libintl.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;}
-    { $as_echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ---------------------------------------------------------------------- ##
-## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=banshee ##
-## ---------------------------------------------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for libintl.h" >&5
-$as_echo_n "checking for libintl.h... " >&6; }
-if test "${ac_cv_header_libintl_h+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_header_libintl_h=$ac_header_preproc
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
-$as_echo "$ac_cv_header_libintl_h" >&6; }
-
-fi
-if test "x$ac_cv_header_libintl_h" = x""yes; then
+    ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default"
+if test "x$ac_cv_header_libintl_h" = x""yes; then :
   gt_cv_func_dgettext_libintl="no"
       libintl_extra_libs=""
 
       #
       # First check in libc
       #
-      { $as_echo "$as_me:$LINENO: checking for ngettext in libc" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5
 $as_echo_n "checking for ngettext in libc... " >&6; }
-if test "${gt_cv_func_ngettext_libc+set}" = set; then
+if test "${gt_cv_func_ngettext_libc+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #include <libintl.h>
@@ -20941,54 +18899,25 @@ return !ngettext ("","", 1)
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   gt_cv_func_ngettext_libc=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	gt_cv_func_ngettext_libc=no
+  gt_cv_func_ngettext_libc=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_ngettext_libc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5
 $as_echo "$gt_cv_func_ngettext_libc" >&6; }
 
       if test "$gt_cv_func_ngettext_libc" = "yes" ; then
-	      { $as_echo "$as_me:$LINENO: checking for dgettext in libc" >&5
+	      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5
 $as_echo_n "checking for dgettext in libc... " >&6; }
-if test "${gt_cv_func_dgettext_libc+set}" = set; then
+if test "${gt_cv_func_dgettext_libc+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #include <libintl.h>
@@ -21001,141 +18930,26 @@ return !dgettext ("","")
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   gt_cv_func_dgettext_libc=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	gt_cv_func_dgettext_libc=no
+  gt_cv_func_dgettext_libc=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5
 $as_echo "$gt_cv_func_dgettext_libc" >&6; }
       fi
 
       if test "$gt_cv_func_ngettext_libc" = "yes" ; then
-
-for ac_func in bind_textdomain_codeset
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  eval "$as_ac_var=yes"
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+        for ac_func in bind_textdomain_codeset
+do :
+  ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset"
+if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_BIND_TEXTDOMAIN_CODESET 1
 _ACEOF
 
 fi
@@ -21150,18 +18964,14 @@ done
 	 || test "$gt_cv_func_ngettext_libc" != "yes" \
          || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
 
-        { $as_echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5
 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then
+if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -21179,55 +18989,26 @@ return bindtextdomain ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_intl_bindtextdomain=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_intl_bindtextdomain=no
+  ac_cv_lib_intl_bindtextdomain=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5
 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; }
-if test "x$ac_cv_lib_intl_bindtextdomain" = x""yes; then
-  { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5
+if test "x$ac_cv_lib_intl_bindtextdomain" = x""yes; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5
 $as_echo_n "checking for ngettext in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_ngettext+set}" = set; then
+if test "${ac_cv_lib_intl_ngettext+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -21245,55 +19026,26 @@ return ngettext ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_intl_ngettext=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_intl_ngettext=no
+  ac_cv_lib_intl_ngettext=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5
 $as_echo "$ac_cv_lib_intl_ngettext" >&6; }
-if test "x$ac_cv_lib_intl_ngettext" = x""yes; then
-  { $as_echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5
+if test "x$ac_cv_lib_intl_ngettext" = x""yes; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5
 $as_echo_n "checking for dgettext in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_dgettext+set}" = set; then
+if test "${ac_cv_lib_intl_dgettext+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -21311,43 +19063,18 @@ return dgettext ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_intl_dgettext=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_intl_dgettext=no
+  ac_cv_lib_intl_dgettext=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5
 $as_echo "$ac_cv_lib_intl_dgettext" >&6; }
-if test "x$ac_cv_lib_intl_dgettext" = x""yes; then
+if test "x$ac_cv_lib_intl_dgettext" = x""yes; then :
   gt_cv_func_dgettext_libintl=yes
 fi
 
@@ -21357,22 +19084,18 @@ fi
 
 
 	if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
-	  { $as_echo "$as_me:$LINENO: checking if -liconv is needed to use gettext" >&5
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5
 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; }
-	  { $as_echo "$as_me:$LINENO: result: " >&5
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
 $as_echo "" >&6; }
-  	  { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5
+  	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5
 $as_echo_n "checking for ngettext in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_ngettext+set}" = set; then
+if test "${ac_cv_lib_intl_ngettext+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl -liconv $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -21390,55 +19113,26 @@ return ngettext ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_intl_ngettext=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_intl_ngettext=no
+  ac_cv_lib_intl_ngettext=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5
 $as_echo "$ac_cv_lib_intl_ngettext" >&6; }
-if test "x$ac_cv_lib_intl_ngettext" = x""yes; then
-  { $as_echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5
+if test "x$ac_cv_lib_intl_ngettext" = x""yes; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5
 $as_echo_n "checking for dcgettext in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_dcgettext+set}" = set; then
+if test "${ac_cv_lib_intl_dcgettext+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl -liconv $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -21456,43 +19150,18 @@ return dcgettext ();
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_lib_intl_dcgettext=yes
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_lib_intl_dcgettext=no
+  ac_cv_lib_intl_dcgettext=no
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5
 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; }
-if test "x$ac_cv_lib_intl_dcgettext" = x""yes; then
+if test "x$ac_cv_lib_intl_dcgettext" = x""yes; then :
   gt_cv_func_dgettext_libintl=yes
 			libintl_extra_libs=-liconv
 else
@@ -21514,102 +19183,12 @@ fi
           glib_save_LIBS="$LIBS"
           LIBS="$LIBS -lintl $libintl_extra_libs"
           unset ac_cv_func_bind_textdomain_codeset
-
-for ac_func in bind_textdomain_codeset
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  eval "$as_ac_var=yes"
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+          for ac_func in bind_textdomain_codeset
+do :
+  ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset"
+if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_BIND_TEXTDOMAIN_CODESET 1
 _ACEOF
 
 fi
@@ -21639,15 +19218,13 @@ done
 
       if test "$gt_cv_have_gettext" = "yes"; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_GETTEXT 1
-_ACEOF
+$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
 
 	# Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MSGFMT+set}" = set; then
+if test "${ac_cv_path_MSGFMT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case "$MSGFMT" in
@@ -21672,118 +19249,28 @@ esac
 fi
 MSGFMT="$ac_cv_path_MSGFMT"
 if test "$MSGFMT" != "no"; then
-  { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
 $as_echo "$MSGFMT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 	if test "$MSGFMT" != "no"; then
           glib_save_LIBS="$LIBS"
           LIBS="$LIBS $INTLLIBS"
-
-for ac_func in dcgettext
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  eval "$as_ac_var=yes"
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
-		 $as_echo "$as_val"'`
-   if test "x$as_val" = x""yes; then
+	  for ac_func in dcgettext
+do :
+  ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext"
+if test "x$ac_cv_func_dcgettext" = x""yes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_DCGETTEXT 1
 _ACEOF
 
 fi
 done
 
 	  MSGFMT_OPTS=
-	  { $as_echo "$as_me:$LINENO: checking if msgfmt accepts -c" >&5
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5
 $as_echo_n "checking if msgfmt accepts -c... " >&6; }
 	  cat >conftest.foo <<_ACEOF
 
@@ -21798,14 +19285,14 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 
 _ACEOF
-if { ($as_echo "$as_me:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5
+if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5
   ($MSGFMT -c -o /dev/null conftest.foo) 2>&5
   ac_status=$?
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  MSGFMT_OPTS=-c; { $as_echo "$as_me:$LINENO: result: yes" >&5
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-else { $as_echo "$as_me:$LINENO: result: no" >&5
+else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 echo "$as_me: failed input was:" >&5
 sed 's/^/| /' conftest.foo >&5
@@ -21813,9 +19300,9 @@ fi
 
 	  # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_GMSGFMT+set}" = set; then
+if test "${ac_cv_path_GMSGFMT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case $GMSGFMT in
@@ -21828,14 +19315,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
@@ -21844,19 +19331,19 @@ esac
 fi
 GMSGFMT=$ac_cv_path_GMSGFMT
 if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
 $as_echo "$GMSGFMT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
 	  # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_XGETTEXT+set}" = set; then
+if test "${ac_cv_path_XGETTEXT+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   case "$XGETTEXT" in
@@ -21881,18 +19368,14 @@ esac
 fi
 XGETTEXT="$ac_cv_path_XGETTEXT"
 if test "$XGETTEXT" != ":"; then
-  { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
 $as_echo "$XGETTEXT" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
-	  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+	  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -21904,121 +19387,14 @@ extern int _nl_msg_cat_cntr;
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
+if ac_fn_c_try_link "$LINENO"; then :
   CATOBJEXT=.gmo
              DATADIRNAME=share
 else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	case $host in
+  case $host in
 	    *-*-solaris*)
-	    	                	    	                { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5
-$as_echo_n "checking for bind_textdomain_codeset... " >&6; }
-if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define bind_textdomain_codeset innocuous_bind_textdomain_codeset
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char bind_textdomain_codeset (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef bind_textdomain_codeset
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char bind_textdomain_codeset ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset
-choke me
-#endif
-
-int
-main ()
-{
-return bind_textdomain_codeset ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then
-  ac_cv_func_bind_textdomain_codeset=yes
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_func_bind_textdomain_codeset=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5
-$as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; }
-if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then
+	    	                	    	                ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset"
+if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then :
   CATOBJEXT=.gmo
                DATADIRNAME=share
 else
@@ -22033,10 +19409,8 @@ fi
 	    ;;
 	    esac
 fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
           LIBS="$glib_save_LIBS"
 	  INSTOBJEXT=.mo
 	else
@@ -22050,9 +19424,7 @@ fi
 
     if test "$gt_cv_have_gettext" = "yes" ; then
 
-cat >>confdefs.h <<\_ACEOF
-#define ENABLE_NLS 1
-_ACEOF
+$as_echo "#define ENABLE_NLS 1" >>confdefs.h
 
     fi
 
@@ -22060,7 +19432,7 @@ _ACEOF
                   if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
         : ;
       else
-        { $as_echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5
 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
         XGETTEXT=":"
       fi
@@ -22093,7 +19465,7 @@ $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
      if test "x$ALL_LINGUAS" = "x"; then
        LINGUAS=
      else
-       { $as_echo "$as_me:$LINENO: checking for catalogs to be installed" >&5
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5
 $as_echo_n "checking for catalogs to be installed... " >&6; }
        NEW_LINGUAS=
        for presentlang in $ALL_LINGUAS; do
@@ -22118,7 +19490,7 @@ $as_echo_n "checking for catalogs to be installed... " >&6; }
          fi
        done
        LINGUAS=$NEW_LINGUAS
-       { $as_echo "$as_me:$LINENO: result: $LINGUAS" >&5
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5
 $as_echo "$LINGUAS" >&6; }
      fi
 
@@ -22127,6 +19499,15 @@ $as_echo "$LINGUAS" >&6; }
      fi
    fi
 
+            MKINSTALLDIRS=
+   if test -n "$ac_aux_dir"; then
+     MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
+   fi
+   if test -z "$MKINSTALLDIRS"; then
+     MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
+   fi
+
+
          test -d po || mkdir po
    if test "x$srcdir" != "x."; then
      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
@@ -22146,7 +19527,7 @@ $as_echo "$LINGUAS" >&6; }
 
 
 # Check whether --enable-podcast was given.
-if test "${enable_podcast+set}" = set; then
+if test "${enable_podcast+set}" = set; then :
   enableval=$enable_podcast;
 else
   enable_podcast="yes"
@@ -22162,7 +19543,7 @@ fi
 
 
 # Check whether --enable-release was given.
-if test "${enable_release+set}" = set; then
+if test "${enable_release+set}" = set; then :
   enableval=$enable_release; enable_release=yes
 else
   enable_release=`(test ! -d .svn && test ! -d .git) && echo "yes" || echo "no"`
@@ -22196,7 +19577,7 @@ fi
 
 
 # Check whether --with-vendor-build-id was given.
-if test "${with_vendor_build_id+set}" = set; then
+if test "${with_vendor_build_id+set}" = set; then :
   withval=$with_vendor_build_id; vendor_build_id="$withval"
 else
 
@@ -22218,7 +19599,7 @@ BUILD_TIME=`date +"%F %T %Z"`
 
 
   # Check whether --enable-shave was given.
-if test "${enable_shave+set}" = set; then
+if test "${enable_shave+set}" = set; then :
   enableval=$enable_shave;
 else
   enable_shave=yes
@@ -22238,9 +19619,9 @@ fi
 
         # Extract the first word of "sed", so it can be a program name with args.
 set dummy sed; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_SED+set}" = set; then
+if test "${ac_cv_prog_SED+set}" = set; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$SED"; then
@@ -22251,14 +19632,14 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
     ac_cv_prog_SED="sed"
-    $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_prog_SED" && ac_cv_prog_SED="false"
@@ -22266,10 +19647,10 @@ fi
 fi
 SED=$ac_cv_prog_SED
 if test -n "$SED"; then
-  { $as_echo "$as_me:$LINENO: result: $SED" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
 $as_echo "$SED" >&6; }
 else
-  { $as_echo "$as_me:$LINENO: result: no" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
@@ -22307,7 +19688,7 @@ fi
 
 
 
-ac_config_files="$ac_config_files Makefile build/Makefile build/m4/Makefile build/m4/shave/shave build/m4/shave/shave-libtool build/pkg-config/Makefile data/Makefile data/org.bansheeproject.Banshee.service data/org.bansheeproject.CollectionIndexer.service data/audio-profiles/Makefile data/desktop-files/Makefile data/desktop-files/common.desktop data/icon-theme-hicolor/Makefile help/Makefile docs/Makefile docs/Hyena/Makefile docs/Banshee/Makefile po/Makefile.in tests/Makefile tests/Analyzer/Makefile tests/Performance/Makefile extras/Makefile libbanshee/Makefile gstreamer/Makefile gstreamer/equalizer/Makefile src/Hyena/Makefile src/Hyena/build/Makefile src/Hyena/build/pkg-config/Makefile src/Hyena/build/m4/Makefile src/Hyena/Mono.Data.Sqlite/Makefile src/Hyena/Hyena/Makefile src/Hyena/Hyena.Data.Sqlite/Makefile src/Hyena/Hyena.Gui/Makefile src/Makefile src/AssemblyInfo.cs src/Clients/Makefile src/Clients/Beroe/Makefile src/Clients/Booter/Makefile src/Clients/Booter/banshee-1.linux src/Clients/Booter/banshee-1.darwin src/Clients/Halie/Makefile src/Clients/Muinshee/Makefile src/Clients/Nereid/Makefile src/Clients/MeeGo/Makefile src/Core/Makefile src/Core/Banshee.CollectionIndexer/Makefile src/Core/Banshee.Core/Makefile src/Core/Banshee.Services/Makefile src/Core/Banshee.ThickClient/Makefile src/Core/Banshee.Widgets/Makefile src/Core/Banshee.WebBrowser/Makefile src/Core/Banshee.WebBrowser/libossifer/Makefile src/Backends/Makefile src/Backends/Banshee.Gio/Makefile src/Backends/Banshee.Gnome/Makefile src/Backends/Banshee.GStreamer/Makefile src/Backends/Banshee.GStreamerSharp/Makefile src/Backends/Banshee.Hal/Makefile src/Backends/Banshee.Unix/Makefile src/Backends/Banshee.Osx/Makefile src/Backends/Banshee.NowPlaying.X11/Makefile src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile src/Libraries/Makefile src/Libraries/Lastfm/Makefile src/Libraries/Lastfm.Gui/Makefile src/Libraries/Migo/Makefile src/Libraries/Mono.Media/Makefile src/Libraries/Mtp/Makefile src/Libraries/Mtp/Mtp.dll.config src/Libraries/MusicBrainz/Makefile src/Dap/Makefile src/Dap/Banshee.Dap/Makefile src/Dap/Banshee.Dap.AppleDevice/Makefile src/Dap/Banshee.Dap.Ipod/Makefile src/Dap/Banshee.Dap.MassStorage/Makefile src/Dap/Banshee.Dap.Mtp/Makefile src/Dap/Banshee.Dap.Karma/Makefile src/Extensions/Makefile src/Extensions/Banshee.AmazonMp3/Makefile src/Extensions/Banshee.AmazonMp3.Store/Makefile src/Extensions/Banshee.Audiobook/Makefile src/Extensions/Banshee.AudioCd/Makefile src/Extensions/Banshee.BooScript/Makefile src/Extensions/Banshee.Bpm/Makefile src/Extensions/Banshee.CoverArt/Makefile src/Extensions/Banshee.Daap/Makefile src/Extensions/Banshee.Emusic/Makefile src/Extensions/Banshee.FileSystemQueue/Makefile src/Extensions/Banshee.InternetArchive/Makefile src/Extensions/Banshee.Fixup/Makefile src/Extensions/Banshee.InternetRadio/Makefile src/Extensions/Banshee.Lastfm/Makefile src/Extensions/Banshee.LastfmStreaming/Makefile src/Extensions/Banshee.LibraryWatcher/Makefile src/Extensions/Banshee.MiniMode/Makefile src/Extensions/Banshee.MiroGuide/Makefile src/Extensions/Banshee.MeeGo/Makefile src/Extensions/Banshee.Mpris/Makefile src/Extensions/Banshee.MultimediaKeys/Makefile src/Extensions/Banshee.NotificationArea/Makefile src/Extensions/Banshee.NowPlaying/Makefile src/Extensions/Banshee.PlayQueue/Makefile src/Extensions/Banshee.PlayerMigration/Makefile src/Extensions/Banshee.Podcasting/Makefile src/Extensions/Banshee.SqlDebugConsole/Makefile src/Extensions/Banshee.Sample/Makefile src/Extensions/Banshee.Torrent/Makefile src/Extensions/Banshee.RemoteAudio/Makefile src/Extensions/Banshee.Wikipedia/Makefile src/Extensions/Banshee.YouTube/Makefile extras/metrics/Makefile"
+ac_config_files="$ac_config_files Makefile build/Makefile build/m4/Makefile build/m4/shave/shave build/m4/shave/shave-libtool build/pkg-config/Makefile data/Makefile data/org.bansheeproject.Banshee.service data/org.bansheeproject.CollectionIndexer.service data/audio-profiles/Makefile data/desktop-files/Makefile data/desktop-files/common.desktop data/icon-theme-hicolor/Makefile help/Makefile docs/Makefile docs/Hyena/Makefile docs/Banshee/Makefile po/Makefile.in tests/Makefile tests/Analyzer/Makefile tests/Performance/Makefile extras/Makefile libbanshee/Makefile gstreamer/Makefile gstreamer/equalizer/Makefile src/Hyena/Makefile src/Hyena/build/Makefile src/Hyena/build/pkg-config/Makefile src/Hyena/build/m4/Makefile src/Hyena/Hyena/Makefile src/Hyena/Hyena.Data.Sqlite/Makefile src/Hyena/Hyena.Gui/Makefile src/Makefile src/AssemblyInfo.cs src/Clients/Makefile src/Clients/Beroe/Makefile src/Clients/Booter/Makefile src/Clients/Booter/banshee-1.linux src/Clients/Booter/banshee-1.darwin src/Clients/Halie/Makefile src/Clients/Muinshee/Makefile src/Clients/Nereid/Makefile src/Clients/MeeGo/Makefile src/Core/Makefile src/Core/Banshee.CollectionIndexer/Makefile src/Core/Banshee.Core/Makefile src/Core/Banshee.Services/Makefile src/Core/Banshee.ThickClient/Makefile src/Core/Banshee.Widgets/Makefile src/Core/Banshee.WebBrowser/Makefile src/Core/Banshee.WebBrowser/libossifer/Makefile src/Backends/Makefile src/Backends/Banshee.Gio/Makefile src/Backends/Banshee.Gnome/Makefile src/Backends/Banshee.GStreamer/Makefile src/Backends/Banshee.GStreamerSharp/Makefile src/Backends/Banshee.Hal/Makefile src/Backends/Banshee.Unix/Makefile src/Backends/Banshee.Osx/Makefile src/Backends/Banshee.NowPlaying.X11/Makefile src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile src/Libraries/Makefile src/Libraries/Lastfm/Makefile src/Libraries/Lastfm.Gui/Makefile src/Libraries/Migo/Makefile src/Libraries/Mono.Media/Makefile src/Libraries/Mtp/Makefile src/Libraries/Mtp/Mtp.dll.config src/Libraries/MusicBrainz/Makefile src/Dap/Makefile src/Dap/Banshee.Dap/Makefile src/Dap/Banshee.Dap.AppleDevice/Makefile src/Dap/Banshee.Dap.Ipod/Makefile src/Dap/Banshee.Dap.MassStorage/Makefile src/Dap/Banshee.Dap.Mtp/Makefile src/Dap/Banshee.Dap.Karma/Makefile src/Extensions/Makefile src/Extensions/Banshee.AmazonMp3/Makefile src/Extensions/Banshee.AmazonMp3.Store/Makefile src/Extensions/Banshee.Audiobook/Makefile src/Extensions/Banshee.AudioCd/Makefile src/Extensions/Banshee.BooScript/Makefile src/Extensions/Banshee.Bpm/Makefile src/Extensions/Banshee.CoverArt/Makefile src/Extensions/Banshee.Daap/Makefile src/Extensions/Banshee.Emusic/Makefile src/Extensions/Banshee.FileSystemQueue/Makefile src/Extensions/Banshee.InternetArchive/Makefile src/Extensions/Banshee.Fixup/Makefile src/Extensions/Banshee.InternetRadio/Makefile src/Extensions/Banshee.Lastfm/Makefile src/Extensions/Banshee.LastfmStreaming/Makefile src/Extensions/Banshee.LibraryWatcher/Makefile src/Extensions/Banshee.MiniMode/Makefile src/Extensions/Banshee.MiroGuide/Makefile src/Extensions/Banshee.MeeGo/Makefile src/Extensions/Banshee.Mpris/Makefile src/Extensions/Banshee.MultimediaKeys/Makefile src/Extensions/Banshee.NotificationArea/Makefile src/Extensions/Banshee.NowPlaying/Makefile src/Extensions/Banshee.PlayQueue/Makefile src/Extensions/Banshee.PlayerMigration/Makefile src/Extensions/Banshee.Podcasting/Makefile src/Extensions/Banshee.SqlDebugConsole/Makefile src/Extensions/Banshee.Sample/Makefile src/Extensions/Banshee.Torrent/Makefile src/Extensions/Banshee.RemoteAudio/Makefile src/Extensions/Banshee.Wikipedia/Makefile src/Extensions/Banshee.YouTube/Makefile extras/metrics/Makefile"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -22336,13 +19717,13 @@ _ACEOF
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
       BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) $as_unset $ac_var ;;
+      *) { eval $ac_var=; unset $ac_var;} ;;
       esac ;;
     esac
   done
@@ -22350,8 +19731,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
   (set) 2>&1 |
     case $as_nl`(ac_space=' '; set) 2>&1` in #(
     *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes (double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      # `set' does not quote correctly, so add quotes: double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \.
       sed -n \
 	"s/'/'\\\\''/g;
 	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
@@ -22374,11 +19755,11 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
     test "x$cache_file" != "x/dev/null" &&
-      { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
 $as_echo "$as_me: updating cache $cache_file" >&6;}
     cat confcache >$cache_file
   else
-    { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
@@ -22392,494 +19773,306 @@ DEFS=-DHAVE_CONFIG_H
 
 ac_libobjs=
 ac_ltlibobjs=
+U=
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
   ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
   #    will be set to the directory where LIBOBJS objects are built.
-  ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
+  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
 done
 LIBOBJS=$ac_libobjs
 
 LTLIBOBJS=$ac_ltlibobjs
 
 
+ if test -n "$EXEEXT"; then
+  am__EXEEXT_TRUE=
+  am__EXEEXT_FALSE='#'
+else
+  am__EXEEXT_TRUE='#'
+  am__EXEEXT_FALSE=
+fi
+
 if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 
   ac_config_commands="$ac_config_commands po/stamp-it"
 
 
 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_X11_TRUE}" && test -z "${HAVE_X11_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_X11\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_X11\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_X11\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_QUARTZ_TRUE}" && test -z "${HAVE_QUARTZ_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_QUARTZ\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_QUARTZ\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_QUARTZ\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_CLUTTER_TRUE}" && test -z "${HAVE_CLUTTER_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_CLUTTER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_CLUTTER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_CLUTTER\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_BUILTIN_EQUALIZER_TRUE}" && test -z "${ENABLE_BUILTIN_EQUALIZER_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_BUILTIN_EQUALIZER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_BUILTIN_EQUALIZER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_BUILTIN_EQUALIZER\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GST_SHARP_TRUE}" && test -z "${ENABLE_GST_SHARP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GST_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GST_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GST_SHARP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GST_SHARP_TRUE}" && test -z "${ENABLE_GST_SHARP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GST_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GST_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GST_SHARP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_XVIDMODE_TRUE}" && test -z "${HAVE_XVIDMODE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_XVIDMODE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_XVIDMODE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_XVIDMODE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_SK_TRUE}" && test -z "${ENABLE_SK_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_SK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_SK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_SK\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_SK_TRUE}" && test -z "${ENABLE_SK_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_SK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_SK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_SK\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GNOME_DOC_UTILS_TRUE}" && test -z "${HAVE_GNOME_DOC_UTILS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GNOME_DOC_UTILS_TRUE}" && test -z "${HAVE_GNOME_DOC_UTILS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GNOME_DOC_UTILS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_LIBRARY_WATCHER_TRUE}" && test -z "${ENABLE_LIBRARY_WATCHER_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_LIBRARY_WATCHER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_LIBRARY_WATCHER\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_LIBRARY_WATCHER\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${EXTERNAL_NOTIFY_SHARP_TRUE}" && test -z "${EXTERNAL_NOTIFY_SHARP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${EXTERNAL_NOTIFY_SHARP_TRUE}" && test -z "${EXTERNAL_NOTIFY_SHARP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"EXTERNAL_NOTIFY_SHARP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_BOO_TRUE}" && test -z "${HAVE_BOO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_BOO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_BOO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_BOO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_BOO_TRUE}" && test -z "${HAVE_BOO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_BOO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_BOO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_BOO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${BUILD_DOCS_TRUE}" && test -z "${BUILD_DOCS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"BUILD_DOCS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"BUILD_DOCS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"BUILD_DOCS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${BUILD_DOCS_TRUE}" && test -z "${BUILD_DOCS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"BUILD_DOCS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"BUILD_DOCS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"BUILD_DOCS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_LIBWEBKIT_TRUE}" && test -z "${HAVE_LIBWEBKIT_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_LIBWEBKIT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_LIBWEBKIT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_LIBWEBKIT\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_LIBSOUP_GNOME_TRUE}" && test -z "${HAVE_LIBSOUP_GNOME_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_LIBSOUP_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_LIBSOUP_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_LIBSOUP_GNOME\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATASHARP_1_5_TRUE}" && test -z "${HAVE_GDATASHARP_1_5_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATASHARP_1_5\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATASHARP_1_5_TRUE}" && test -z "${HAVE_GDATASHARP_1_5_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATASHARP_1_5\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATASHARP_1_5_TRUE}" && test -z "${HAVE_GDATASHARP_1_5_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATASHARP_1_5\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATA_TRUE}" && test -z "${HAVE_GDATA_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATA\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATASHARP_1_5_TRUE}" && test -z "${HAVE_GDATASHARP_1_5_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATASHARP_1_5\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATASHARP_1_5\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GDATA_TRUE}" && test -z "${HAVE_GDATA_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GDATA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GDATA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GDATA\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_HAL_TRUE}" && test -z "${ENABLE_HAL_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_HAL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_HAL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_HAL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GIO_TRUE}" && test -z "${ENABLE_GIO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GIO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GIO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GIO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GIO_HARDWARE_TRUE}" && test -z "${ENABLE_GIO_HARDWARE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GIO_HARDWARE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GIO_HARDWARE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GIO_HARDWARE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GIO_TRUE}" && test -z "${ENABLE_GIO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GIO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GIO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GIO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GIO_HARDWARE_TRUE}" && test -z "${ENABLE_GIO_HARDWARE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GIO_HARDWARE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GIO_HARDWARE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GIO_HARDWARE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MOONLIGHT_TRUE}" && test -z "${HAVE_MOONLIGHT_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MOONLIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MOONLIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MOONLIGHT\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MOONLIGHT_TRUE}" && test -z "${HAVE_MOONLIGHT_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MOONLIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MOONLIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MOONLIGHT\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_TESTS_TRUE}" && test -z "${ENABLE_TESTS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_TESTS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_TESTS_TRUE}" && test -z "${ENABLE_TESTS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_TESTS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_TESTS_TRUE}" && test -z "${ENABLE_TESTS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_TESTS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_TESTS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_GLIBSHARP_2_12_7_TRUE}" && test -z "${HAVE_GLIBSHARP_2_12_7_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GLIBSHARP_2_12_7\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_GLIBSHARP_2_12_7\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_GLIBSHARP_2_12_7\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_ATK_TRUE}" && test -z "${ENABLE_ATK_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_ATK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_ATK\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_ATK\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${PLATFORM_DARWIN_TRUE}" && test -z "${PLATFORM_DARWIN_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"PLATFORM_DARWIN\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"PLATFORM_DARWIN\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"PLATFORM_DARWIN\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GNOME_TRUE}" && test -z "${ENABLE_GNOME_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GNOME\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"GCONF_SCHEMAS_INSTALL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GNOME_TRUE}" && test -z "${ENABLE_GNOME_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GNOME\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GNOME\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_MTP_TRUE}" && test -z "${ENABLE_MTP_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_MTP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_MTP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_MTP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${LIBMTP_EIGHT_TRUE}" && test -z "${LIBMTP_EIGHT_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"LIBMTP_EIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"LIBMTP_EIGHT\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"LIBMTP_EIGHT\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${LIBMTP_TRACK_STRUCT_HAS_MODDATE_TRUE}" && test -z "${LIBMTP_TRACK_STRUCT_HAS_MODDATE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"LIBMTP_TRACK_STRUCT_HAS_MODDATE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"LIBMTP_TRACK_STRUCT_HAS_MODDATE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"LIBMTP_TRACK_STRUCT_HAS_MODDATE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${LIBMTP_SIZEOF_TIME_T_64_TRUE}" && test -z "${LIBMTP_SIZEOF_TIME_T_64_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"LIBMTP_SIZEOF_TIME_T_64\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"LIBMTP_SIZEOF_TIME_T_64\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"LIBMTP_SIZEOF_TIME_T_64\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_APPLEDEVICE_TRUE}" && test -z "${ENABLE_APPLEDEVICE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_APPLEDEVICE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_APPLEDEVICE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_APPLEDEVICE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_IPOD_TRUE}" && test -z "${ENABLE_IPOD_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_IPOD\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_IPOD\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_IPOD\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_KARMA_TRUE}" && test -z "${ENABLE_KARMA_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_KARMA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_KARMA\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_KARMA\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${DAAP_ENABLED_TRUE}" && test -z "${DAAP_ENABLED_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"DAAP_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"DAAP_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"DAAP_ENABLED\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${DAAP_ENABLED_TRUE}" && test -z "${DAAP_ENABLED_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"DAAP_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"DAAP_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"DAAP_ENABLED\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${REMOTE_AUDIO_ENABLED_TRUE}" && test -z "${REMOTE_AUDIO_ENABLED_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${REMOTE_AUDIO_ENABLED_TRUE}" && test -z "${REMOTE_AUDIO_ENABLED_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"REMOTE_AUDIO_ENABLED\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MONOTORRENT_DBUS_TRUE}" && test -z "${HAVE_MONOTORRENT_DBUS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MONOTORRENT_DBUS_TRUE}" && test -z "${HAVE_MONOTORRENT_DBUS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MONOTORRENT_DBUS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MEEGO_TRUE}" && test -z "${HAVE_MEEGO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MEEGO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MEEGO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MEEGO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HAVE_MEEGO_TRUE}" && test -z "${HAVE_MEEGO_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_MEEGO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HAVE_MEEGO\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HAVE_MEEGO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_GAPLESS_TRUE}" && test -z "${ENABLE_GAPLESS_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_GAPLESS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_GAPLESS\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_GAPLESS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_PODCAST_TRUE}" && test -z "${ENABLE_PODCAST_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_PODCAST\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_PODCAST\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_PODCAST\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${ENABLE_RELEASE_TRUE}" && test -z "${ENABLE_RELEASE_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_RELEASE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"ENABLE_RELEASE\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"ENABLE_RELEASE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HYENA_PKG_CONFIG_TRUE}" && test -z "${HYENA_PKG_CONFIG_FALSE}"; then
-  { { $as_echo "$as_me:$LINENO: error: conditional \"HYENA_PKG_CONFIG\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-$as_echo "$as_me: error: conditional \"HYENA_PKG_CONFIG\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"HYENA_PKG_CONFIG\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 
 : ${CONFIG_STATUS=./config.status}
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
 # Generated by $as_me.
 # Run this file to recreate the current configuration.
@@ -22889,17 +20082,18 @@ cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 debug=false
 ac_cs_recheck=false
 ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -22907,23 +20101,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
 else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
+  case `(set -o) 2>/dev/null` in #(
+  *posix*) :
+    set -o posix ;; #(
+  *) :
+     ;;
 esac
-
 fi
 
 
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
 as_nl='
 '
 export as_nl
@@ -22931,7 +20117,13 @@ export as_nl
 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='print -r --'
+  as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
   as_echo='printf %s\n'
   as_echo_n='printf %s'
 else
@@ -22942,7 +20134,7 @@ else
     as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
     as_echo_n_body='eval
       arg=$1;
-      case $arg in
+      case $arg in #(
       *"$as_nl"*)
 	expr "X$arg" : "X\\(.*\\)$as_nl";
 	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -22965,13 +20157,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
   }
 fi
 
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
 
 # IFS
 # We need space, tab and new line, in precisely that order.  Quoting is
@@ -22981,15 +20166,15 @@ fi
 IFS=" ""	$as_nl"
 
 # Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
+case $0 in #((
   *[\\/]* ) as_myself=$0 ;;
   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  done
 IFS=$as_save_IFS
 
      ;;
@@ -23001,12 +20186,16 @@ if test "x$as_myself" = x; then
 fi
 if test ! -f "$as_myself"; then
   $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
+  exit 1
 fi
 
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there.  '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 done
 PS1='$ '
 PS2='> '
@@ -23018,7 +20207,89 @@ export LC_ALL
 LANGUAGE=C
 export LANGUAGE
 
-# Required to use basename.
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+  as_status=$1; test $as_status -eq 0 && as_status=1
+  if test "$4"; then
+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+  fi
+  $as_echo "$as_me: error: $2" >&2
+  as_fn_exit $as_status
+} # as_fn_error
+
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+  { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+  eval 'as_fn_append ()
+  {
+    eval $1+=\$2
+  }'
+else
+  as_fn_append ()
+  {
+    eval $1=\$$1\$2
+  }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+  eval 'as_fn_arith ()
+  {
+    as_val=$(( $* ))
+  }'
+else
+  as_fn_arith ()
+  {
+    as_val=`expr "$@" || test $? -eq 1`
+  }
+fi # as_fn_arith
+
+
 if expr a : '\(a\)' >/dev/null 2>&1 &&
    test "X`expr 00001 : '.*\(...\)'`" = X001; then
   as_expr=expr
@@ -23032,8 +20303,12 @@ else
   as_basename=false
 fi
 
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
+else
+  as_dirname=false
+fi
 
-# Name of the executable.
 as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
@@ -23053,76 +20328,25 @@ $as_echo X/"$0" |
 	  }
 	  s/.*/./; q'`
 
-# CDPATH.
-$as_unset CDPATH
-
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
 
 ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
 -n*)
-  case `echo 'x\c'` in
+  case `echo 'xy\c'` in
   *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
+  xy)  ECHO_C='\c';;
+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
+       ECHO_T='	';;
   esac;;
 *)
   ECHO_N='-n';;
 esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
 
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
@@ -23151,8 +20375,56 @@ fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
 
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+  case $as_dir in #(
+  -*) as_dir=./$as_dir;;
+  esac
+  test -d "$as_dir" || eval $as_mkdir_p || {
+    as_dirs=
+    while :; do
+      case $as_dir in #(
+      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *) as_qdir=$as_dir;;
+      esac
+      as_dirs="'$as_qdir' $as_dirs"
+      as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$as_dir" : 'X\(//\)[^/]' \| \
+	 X"$as_dir" : 'X\(//\)$' \| \
+	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)[^/].*/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+      test -d "$as_dir" && break
+    done
+    test -z "$as_dirs" || eval "mkdir $as_dirs"
+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
 if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
+  as_mkdir_p='mkdir -p "$as_dir"'
 else
   test -d ./-p && rmdir ./-p
   as_mkdir_p=false
@@ -23171,10 +20443,10 @@ else
       if test -d "$1"; then
 	test -d "$1/.";
       else
-	case $1 in
+	case $1 in #(
 	-*)set "./$1";;
 	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
 	???[sx]*):;;*)false;;esac;fi
     '\'' sh
   '
@@ -23189,13 +20461,19 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 
 
 exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
 
-# Save the log message, to keep $[0] and so on meaningful, and to
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# Save the log message, to keep $0 and so on meaningful, and to
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
 This file was extended by banshee-1 $as_me 1.9.0, which was
-generated by GNU Autoconf 2.63.  Invocation command line was
+generated by GNU Autoconf 2.67.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -23227,13 +20505,15 @@ _ACEOF
 
 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration.  Unless the files
+and actions are specified as TAGs, all are instantiated by default.
 
-Usage: $0 [OPTION]... [FILE]...
+Usage: $0 [OPTION]... [TAG]...
 
   -h, --help       print this help, then exit
   -V, --version    print version number and configuration settings, then exit
+      --config     print configuration, then exit
   -q, --quiet, --silent
                    do not print progress messages
   -d, --debug      don't remove temporary files
@@ -23252,16 +20532,17 @@ $config_headers
 Configuration commands:
 $config_commands
 
-Report bugs to <bug-autoconf at gnu.org>."
+Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=banshee>."
 
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
 banshee-1 config.status 1.9.0
-configured by $0, generated by GNU Autoconf 2.63,
-  with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+configured by $0, generated by GNU Autoconf 2.67,
+  with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -23279,11 +20560,16 @@ ac_need_defaults=:
 while test $# != 0
 do
   case $1 in
-  --*=*)
+  --*=?*)
     ac_option=`expr "X$1" : 'X\([^=]*\)='`
     ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
     ac_shift=:
     ;;
+  --*=)
+    ac_option=`expr "X$1" : 'X\([^=]*\)='`
+    ac_optarg=
+    ac_shift=:
+    ;;
   *)
     ac_option=$1
     ac_optarg=$2
@@ -23297,27 +20583,29 @@ do
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
     $as_echo "$ac_cs_version"; exit ;;
+  --config | --confi | --conf | --con | --co | --c )
+    $as_echo "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
     case $ac_optarg in
     *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    '') as_fn_error $? "missing file argument" ;;
     esac
-    CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
+    as_fn_append CONFIG_FILES " '$ac_optarg'"
     ac_need_defaults=false;;
   --header | --heade | --head | --hea )
     $ac_shift
     case $ac_optarg in
     *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
-    CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
+    as_fn_append CONFIG_HEADERS " '$ac_optarg'"
     ac_need_defaults=false;;
   --he | --h)
     # Conflict between --help and --header
-    { $as_echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; };;
+    as_fn_error $? "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
   --help | --hel | -h )
     $as_echo "$ac_cs_usage"; exit ;;
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
@@ -23325,11 +20613,10 @@ Try \`$0 --help' for more information." >&2
     ac_cs_silent=: ;;
 
   # This is an error.
-  -*) { $as_echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; } ;;
+  -*) as_fn_error $? "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
 
-  *) ac_config_targets="$ac_config_targets $1"
+  *) as_fn_append ac_config_targets " $1"
      ac_need_defaults=false ;;
 
   esac
@@ -23669,7 +20956,6 @@ do
     "src/Hyena/build/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/build/Makefile" ;;
     "src/Hyena/build/pkg-config/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/build/pkg-config/Makefile" ;;
     "src/Hyena/build/m4/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/build/m4/Makefile" ;;
-    "src/Hyena/Mono.Data.Sqlite/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/Mono.Data.Sqlite/Makefile" ;;
     "src/Hyena/Hyena/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/Hyena/Makefile" ;;
     "src/Hyena/Hyena.Data.Sqlite/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/Hyena.Data.Sqlite/Makefile" ;;
     "src/Hyena/Hyena.Gui/Makefile") CONFIG_FILES="$CONFIG_FILES src/Hyena/Hyena.Gui/Makefile" ;;
@@ -23753,9 +21039,7 @@ do
     "extras/metrics/Makefile") CONFIG_FILES="$CONFIG_FILES extras/metrics/Makefile" ;;
     "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;;
 
-  *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
-   { (exit 1); exit 1; }; };;
+  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
   esac
 done
 
@@ -23782,7 +21066,7 @@ $debug ||
   trap 'exit_status=$?
   { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
 ' 0
-  trap '{ (exit 1); exit 1; }' 1 2 13 15
+  trap 'as_fn_exit 1' 1 2 13 15
 }
 # Create a (secure) tmp directory for tmp files.
 
@@ -23793,11 +21077,7 @@ $debug ||
 {
   tmp=./conf$$-$RANDOM
   (umask 077 && mkdir "$tmp")
-} ||
-{
-   $as_echo "$as_me: cannot create a temporary directory in ." >&2
-   { (exit 1); exit 1; }
-}
+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
 
 # Set up the scripts for CONFIG_FILES section.
 # No need to generate them if there are no CONFIG_FILES.
@@ -23805,7 +21085,13 @@ $debug ||
 if test -n "$CONFIG_FILES"; then
 
 
-ac_cr='
'
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+  eval ac_cr=\$\'\\r\'
+fi
 ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
 if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
   ac_cs_awk_cr='\\r'
@@ -23822,24 +21108,18 @@ _ACEOF
   echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
   echo "_ACEOF"
 } >conf$$subs.sh ||
-  { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
-   { (exit 1); exit 1; }; }
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   . ./conf$$subs.sh ||
-    { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 
   ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
   if test $ac_delim_n = $ac_delim_num; then
     break
   elif $ac_last_try; then
-    { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
   else
     ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
   fi
@@ -23861,7 +21141,7 @@ s/'"$ac_delim"'$//
 t delim
 :nl
 h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
 t more1
 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
 p
@@ -23875,7 +21155,7 @@ s/.\{148\}//
 t nl
 :delim
 h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
 t more2
 s/["\\]/\\&/g; s/^/"/; s/$/"/
 p
@@ -23928,22 +21208,28 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
 else
   cat
 fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
-  || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
-$as_echo "$as_me: error: could not setup config files machinery" >&2;}
-   { (exit 1); exit 1; }; }
+  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
 _ACEOF
 
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
+# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
 # trailing colons and then remove the whole line if VPATH becomes empty
 # (actually we leave an empty line to preserve line numbers).
 if test "x$srcdir" = x.; then
-  ac_vpsub='/^[	 ]*VPATH[	 ]*=/{
-s/:*\$(srcdir):*/:/
-s/:*\${srcdir}:*/:/
-s/:*@srcdir@:*/:/
-s/^\([^=]*=[	 ]*\):*/\1/
+  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{
+h
+s///
+s/^/:/
+s/[	 ]*$/:/
+s/:\$(srcdir):/:/g
+s/:\${srcdir}:/:/g
+s/:@srcdir@:/:/g
+s/^:*//
 s/:*$//
+x
+s/\(=[	 ]*\).*/\1/
+G
+s/\n//
 s/^[^=]*=[	 ]*$//
 }'
 fi
@@ -23971,9 +21257,7 @@ for ac_last_try in false false :; do
   if test -z "$ac_t"; then
     break
   elif $ac_last_try; then
-    { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
   else
     ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
   fi
@@ -24058,9 +21342,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 _ACAWK
 _ACEOF
 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
-$as_echo "$as_me: error: could not setup config headers machinery" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
 fi # test -n "$CONFIG_HEADERS"
 
 
@@ -24073,9 +21355,7 @@ do
   esac
   case $ac_mode$ac_tag in
   :[FHL]*:*);;
-  :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
-$as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
-   { (exit 1); exit 1; }; };;
+  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
   :[FH]-) ac_tag=-:-;;
   :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
   esac
@@ -24103,12 +21383,10 @@ $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
 	   [\\/$]*) false;;
 	   *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
 	   esac ||
-	   { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
-$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
-   { (exit 1); exit 1; }; };;
+	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
       esac
       case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
-      ac_file_inputs="$ac_file_inputs '$ac_f'"
+      as_fn_append ac_file_inputs " '$ac_f'"
     done
 
     # Let's still pretend it is `configure' which instantiates (i.e., don't
@@ -24119,7 +21397,7 @@ $as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
 	`' by configure.'
     if test x"$ac_file" != x-; then
       configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
 $as_echo "$as_me: creating $ac_file" >&6;}
     fi
     # Neutralize special characters interpreted by sed in replacement strings.
@@ -24132,9 +21410,7 @@ $as_echo "$as_me: creating $ac_file" >&6;}
 
     case $ac_tag in
     *:-:* | *:-) cat >"$tmp/stdin" \
-      || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
-   { (exit 1); exit 1; }; } ;;
+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5  ;;
     esac
     ;;
   esac
@@ -24162,47 +21438,7 @@ $as_echo X"$ac_file" |
 	    q
 	  }
 	  s/.*/./; q'`
-  { as_dir="$ac_dir"
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$as_dir" : 'X\(//\)[^/]' \| \
-	 X"$as_dir" : 'X\(//\)$' \| \
-	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
-   { (exit 1); exit 1; }; }; }
+  as_dir="$ac_dir"; as_fn_mkdir_p
   ac_builddir=.
 
 case "$ac_dir" in
@@ -24259,7 +21495,6 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # If the template does not know about datarootdir, expand it.
 # FIXME: This hack should be removed a few years after 2.60.
 ac_datarootdir_hack=; ac_datarootdir_seen=
-
 ac_sed_dataroot='
 /datarootdir/ {
   p
@@ -24269,12 +21504,11 @@ ac_sed_dataroot='
 /@docdir@/p
 /@infodir@/p
 /@localedir@/p
-/@mandir@/p
-'
+/@mandir@/p'
 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 *datarootdir*) ac_datarootdir_seen=yes;;
 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
@@ -24284,7 +21518,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   s&@infodir@&$infodir&g
   s&@localedir@&$localedir&g
   s&@mandir@&$mandir&g
-    s&\\\${datarootdir}&$datarootdir&g' ;;
+  s&\\\${datarootdir}&$datarootdir&g' ;;
 esac
 _ACEOF
 
@@ -24313,26 +21547,22 @@ s&@MKDIR_P@&$ac_MKDIR_P&;t t
 $ac_datarootdir_hack
 "
 eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
-  || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
-   { (exit 1); exit 1; }; }
+  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
 
 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
   { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
   { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined." >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined.  Please make sure it is defined" >&5
 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined." >&2;}
+which seems to be undefined.  Please make sure it is defined" >&2;}
 
   rm -f "$tmp/stdin"
   case $ac_file in
   -) cat "$tmp/out" && rm -f "$tmp/out";;
   *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
   esac \
-  || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
-   { (exit 1); exit 1; }; }
+  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
  ;;
   :H)
   #
@@ -24343,25 +21573,19 @@ $as_echo "$as_me: error: could not create $ac_file" >&2;}
       $as_echo "/* $configure_input  */" \
       && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
     } >"$tmp/config.h" \
-      || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
-   { (exit 1); exit 1; }; }
+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
 $as_echo "$as_me: $ac_file is unchanged" >&6;}
     else
       rm -f "$ac_file"
       mv "$tmp/config.h" "$ac_file" \
-	|| { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
-   { (exit 1); exit 1; }; }
+	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
     $as_echo "/* $configure_input  */" \
       && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
-      || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
-$as_echo "$as_me: error: could not create -" >&2;}
-   { (exit 1); exit 1; }; }
+      || as_fn_error $? "could not create -" "$LINENO" 5
   fi
 # Compute "$ac_file"'s index in $config_headers.
 _am_arg="$ac_file"
@@ -24399,25 +21623,35 @@ $as_echo X"$_am_arg" |
 	  s/.*/./; q'`/stamp-h$_am_stamp_count
  ;;
 
-  :C)  { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5
+  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
 $as_echo "$as_me: executing $ac_file commands" >&6;}
  ;;
   esac
 
 
   case $ac_file$ac_mode in
-    "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
-  # Strip MF so we end up with the name of the file.
-  mf=`echo "$mf" | sed -e 's/:.*$//'`
-  # Check whether this is an Automake generated Makefile or not.
-  # We used to match only the files named `Makefile.in', but
-  # some people rename them; so instead we look at the file content.
-  # Grep'ing the first line is not enough: some people post-process
-  # each Makefile.in and add a new line on top of each file to say so.
-  # Grep'ing the whole file is not good either: AIX grep has a line
-  # limit of 2048, but all sed's we know have understand at least 4000.
-  if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-    dirpart=`$as_dirname -- "$mf" ||
+    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # are listed without --file.  Let's play safe and only enable the eval
+  # if we detect the quoting.
+  case $CONFIG_FILES in
+  *\'*) eval set x "$CONFIG_FILES" ;;
+  *)   set x $CONFIG_FILES ;;
+  esac
+  shift
+  for mf
+  do
+    # Strip MF so we end up with the name of the file.
+    mf=`echo "$mf" | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile or not.
+    # We used to match only the files named `Makefile.in', but
+    # some people rename them; so instead we look at the file content.
+    # Grep'ing the first line is not enough: some people post-process
+    # each Makefile.in and add a new line on top of each file to say so.
+    # Grep'ing the whole file is not good either: AIX grep has a line
+    # limit of 2048, but all sed's we know have understand at least 4000.
+    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+      dirpart=`$as_dirname -- "$mf" ||
 $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$mf" : 'X\(//\)[^/]' \| \
 	 X"$mf" : 'X\(//\)$' \| \
@@ -24440,28 +21674,28 @@ $as_echo X"$mf" |
 	    q
 	  }
 	  s/.*/./; q'`
-  else
-    continue
-  fi
-  # Extract the definition of DEPDIR, am__include, and am__quote
-  # from the Makefile without running `make'.
-  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-  test -z "$DEPDIR" && continue
-  am__include=`sed -n 's/^am__include = //p' < "$mf"`
-  test -z "am__include" && continue
-  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-  # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n 's/^U = //p' < "$mf"`
-  # Find all dependency output files, they are included files with
-  # $(DEPDIR) in their names.  We invoke sed twice because it is the
-  # simplest approach to changing $(DEPDIR) to its actual value in the
-  # expansion.
-  for file in `sed -n "
-    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-    # Make sure the directory exists.
-    test -f "$dirpart/$file" && continue
-    fdir=`$as_dirname -- "$file" ||
+    else
+      continue
+    fi
+    # Extract the definition of DEPDIR, am__include, and am__quote
+    # from the Makefile without running `make'.
+    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+    test -z "$DEPDIR" && continue
+    am__include=`sed -n 's/^am__include = //p' < "$mf"`
+    test -z "am__include" && continue
+    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+    # When using ansi2knr, U may be empty or an underscore; expand it
+    U=`sed -n 's/^U = //p' < "$mf"`
+    # Find all dependency output files, they are included files with
+    # $(DEPDIR) in their names.  We invoke sed twice because it is the
+    # simplest approach to changing $(DEPDIR) to its actual value in the
+    # expansion.
+    for file in `sed -n "
+      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+      # Make sure the directory exists.
+      test -f "$dirpart/$file" && continue
+      fdir=`$as_dirname -- "$file" ||
 $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$file" : 'X\(//\)[^/]' \| \
 	 X"$file" : 'X\(//\)$' \| \
@@ -24484,51 +21718,12 @@ $as_echo X"$file" |
 	    q
 	  }
 	  s/.*/./; q'`
-    { as_dir=$dirpart/$fdir
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$as_dir" : 'X\(//\)[^/]' \| \
-	 X"$as_dir" : 'X\(//\)$' \| \
-	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-      test -d "$as_dir" && break
+      as_dir=$dirpart/$fdir; as_fn_mkdir_p
+      # echo "creating $dirpart/$file"
+      echo '# dummy' > "$dirpart/$file"
     done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
-   { (exit 1); exit 1; }; }; }
-    # echo "creating $dirpart/$file"
-    echo '# dummy' > "$dirpart/$file"
   done
-done
+}
  ;;
     "libtool":C)
 
@@ -25169,10 +22364,8 @@ _LT_EOF
         sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
       esac ;;
     "po/stamp-it":C)
-    if  ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" ; then
-       { { $as_echo "$as_me:$LINENO: error: po/Makefile.in.in was not created by intltoolize." >&5
-$as_echo "$as_me: error: po/Makefile.in.in was not created by intltoolize." >&2;}
-   { (exit 1); exit 1; }; }
+    if  ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" > /dev/null ; then
+       as_fn_error $? "po/Makefile.in.in was not created by intltoolize." "$LINENO" 5
     fi
     rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp"
     >"po/stamp-it.tmp"
@@ -25195,15 +22388,12 @@ $as_echo "$as_me: error: po/Makefile.in.in was not created by intltoolize." >&2;
 done # for ac_tag
 
 
-{ (exit 0); exit 0; }
+as_fn_exit 0
 _ACEOF
-chmod +x $CONFIG_STATUS
 ac_clean_files=$ac_clean_files_save
 
 test $ac_write_fail = 0 ||
-  { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
 
 
 # configure is writing to config.log, and then calls config.status.
@@ -25224,10 +22414,10 @@ if test "$no_create" != yes; then
   exec 5>>config.log
   # Use ||, not &&, to avoid exiting from the if with $? = 1, which
   # would make configure fail if this is the last instruction.
-  $ac_cs_success || { (exit 1); exit 1; }
+  $ac_cs_success || as_fn_exit 1
 fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
diff --git a/configure.ac b/configure.ac
index 20f7de2..4e1f898 100644
--- a/configure.ac
+++ b/configure.ac
@@ -75,7 +75,6 @@ SHAMROCK_CHECK_MONO_MODULE(1.9.1)
 SHAMROCK_FIND_MONO_2_0_COMPILER
 SHAMROCK_FIND_MONO_RUNTIME
 SHAMROCK_CHECK_MONO_2_0_GAC_ASSEMBLIES([	
-	System.Data
 	Mono.Cairo
 	Mono.Posix
 	ICSharpCode.SharpZipLib
@@ -277,7 +276,6 @@ src/Hyena/Makefile
 src/Hyena/build/Makefile
 src/Hyena/build/pkg-config/Makefile
 src/Hyena/build/m4/Makefile
-src/Hyena/Mono.Data.Sqlite/Makefile
 src/Hyena/Hyena/Makefile
 src/Hyena/Hyena.Data.Sqlite/Makefile
 src/Hyena/Hyena.Gui/Makefile
diff --git a/data/Makefile.in b/data/Makefile.in
index d56490c..1b7fefc 100644
--- a/data/Makefile.in
+++ b/data/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -79,6 +81,7 @@ mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = org.bansheeproject.Banshee.service \
 	org.bansheeproject.CollectionIndexer.service
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -93,16 +96,58 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(dbusservicedir)"
-dbusserviceDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(dbusservice_DATA)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -220,29 +265,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -277,6 +303,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -318,9 +345,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -430,14 +460,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  data/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  data/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign data/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -455,6 +485,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 org.bansheeproject.Banshee.service: $(top_builddir)/config.status $(srcdir)/org.bansheeproject.Banshee.service.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 org.bansheeproject.CollectionIndexer.service: $(top_builddir)/config.status $(srcdir)/org.bansheeproject.CollectionIndexer.service.in
@@ -468,20 +499,23 @@ clean-libtool:
 install-dbusserviceDATA: $(dbusservice_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(dbusservicedir)" || $(MKDIR_P) "$(DESTDIR)$(dbusservicedir)"
-	@list='$(dbusservice_DATA)'; for p in $$list; do \
+	@list='$(dbusservice_DATA)'; test -n "$(dbusservicedir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(dbusserviceDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(dbusservicedir)/$$f'"; \
-	  $(dbusserviceDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(dbusservicedir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbusservicedir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(dbusservicedir)" || exit $$?; \
 	done
 
 uninstall-dbusserviceDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(dbusservice_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(dbusservicedir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(dbusservicedir)/$$f"; \
-	done
+	@list='$(dbusservice_DATA)'; test -n "$(dbusservicedir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(dbusservicedir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(dbusservicedir)" && rm -f $$files
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -490,7 +524,7 @@ uninstall-dbusserviceDATA:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -507,7 +541,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -515,7 +549,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -541,16 +575,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -558,14 +592,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -577,7 +611,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -586,29 +620,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -629,29 +668,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -684,6 +738,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -704,6 +759,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -712,18 +769,28 @@ install-data-am: install-dbusserviceDATA
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -744,8 +811,8 @@ ps-am:
 
 uninstall-am: uninstall-dbusserviceDATA
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -767,6 +834,7 @@ addin-xml-strings.cs: $(ADDIN_XML_FILES) $(top_srcdir)/build/addin-xml-string-ex
 	$(MONO) $(top_srcdir)/build/addin-xml-string-extractor.exe $(ADDIN_XML_FILES) > $@
 
 all: addin-xml-strings.cs
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/data/audio-profiles/Makefile.in b/data/audio-profiles/Makefile.in
index d780334..ad9b653 100644
--- a/data/audio-profiles/Makefile.in
+++ b/data/audio-profiles/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -83,9 +86,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(audioprofilesdir)"
-audioprofilesDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(audioprofiles_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -205,29 +222,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -262,6 +260,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -303,9 +302,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -406,14 +408,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  data/audio-profiles/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  data/audio-profiles/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/audio-profiles/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign data/audio-profiles/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -431,6 +433,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -440,20 +443,23 @@ clean-libtool:
 install-audioprofilesDATA: $(audioprofiles_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(audioprofilesdir)" || $(MKDIR_P) "$(DESTDIR)$(audioprofilesdir)"
-	@list='$(audioprofiles_DATA)'; for p in $$list; do \
+	@list='$(audioprofiles_DATA)'; test -n "$(audioprofilesdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(audioprofilesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(audioprofilesdir)/$$f'"; \
-	  $(audioprofilesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(audioprofilesdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(audioprofilesdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(audioprofilesdir)" || exit $$?; \
 	done
 
 uninstall-audioprofilesDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(audioprofiles_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(audioprofilesdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(audioprofilesdir)/$$f"; \
-	done
+	@list='$(audioprofiles_DATA)'; test -n "$(audioprofilesdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(audioprofilesdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(audioprofilesdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -477,13 +483,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -514,6 +524,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -534,6 +545,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -542,18 +555,28 @@ install-data-am: install-audioprofilesDATA
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -593,6 +616,7 @@ uninstall-am: uninstall-audioprofilesDATA
 
 all: $(audioprofiles_DATA)
 	mkdir -p $(top_builddir)/bin/share/$(PACKAGE)/audio-profiles && cp $(audioprofiles_DATA) $(top_builddir)/bin/share/$(PACKAGE)/audio-profiles
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/data/desktop-files/Makefile.in b/data/desktop-files/Makefile.in
index c644a00..9d952d4 100644
--- a/data/desktop-files/Makefile.in
+++ b/data/desktop-files/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -77,6 +79,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = common.desktop
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -84,9 +87,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(desktopdir)"
-desktopDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(desktop_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -206,29 +223,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -263,6 +261,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -304,9 +303,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -410,14 +412,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  data/desktop-files/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  data/desktop-files/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/desktop-files/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign data/desktop-files/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -435,6 +437,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 common.desktop: $(top_builddir)/config.status $(srcdir)/common.desktop.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
@@ -446,20 +449,23 @@ clean-libtool:
 install-desktopDATA: $(desktop_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(desktopdir)"
-	@list='$(desktop_DATA)'; for p in $$list; do \
+	@list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(desktopdir)/$$f'"; \
-	  $(desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(desktopdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \
 	done
 
 uninstall-desktopDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(desktop_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(desktopdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(desktopdir)/$$f"; \
-	done
+	@list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(desktopdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(desktopdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -483,13 +489,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -521,6 +531,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -540,6 +551,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -547,21 +560,30 @@ info-am:
 install-data-am: install-desktopDATA
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -605,6 +627,7 @@ uninstall-am: uninstall-desktopDATA
 
 install-data-hook:
 	test -z $(DESTDIR) && update-desktop-database $(DESTDIR)$(datadir)/applications || :
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/data/icon-theme-hicolor/Makefile.in b/data/icon-theme-hicolor/Makefile.in
index 57c255b..00467c3 100644
--- a/data/icon-theme-hicolor/Makefile.in
+++ b/data/icon-theme-hicolor/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -195,29 +198,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -252,6 +236,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -293,9 +278,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -400,14 +388,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  data/icon-theme-hicolor/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  data/icon-theme-hicolor/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/icon-theme-hicolor/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign data/icon-theme-hicolor/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -425,6 +413,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -454,13 +443,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -488,6 +481,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -507,6 +501,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -515,18 +511,28 @@ install-data-am: install-data-local
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -548,7 +554,6 @@ ps-am:
 uninstall-am:
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -579,6 +584,7 @@ install-data-local:
 
 uninstall-hook: 
 	@-$(install_icon_exec) -u $(theme_icons)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/depcomp b/depcomp
index e5f9736..df8eea7 100755
--- a/depcomp
+++ b/depcomp
@@ -1,10 +1,10 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2007-03-29.01
+scriptversion=2009-04-28.21; # UTC
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
-# Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
+# Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -17,9 +17,7 @@ scriptversion=2007-03-29.01
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -87,6 +85,15 @@ if test "$depmode" = dashXmstdout; then
    depmode=dashmstdout
 fi
 
+cygpath_u="cygpath -u -f -"
+if test "$depmode" = msvcmsys; then
+   # This is just like msvisualcpp but w/o cygpath translation.
+   # Just convert the backslash-escaped backslashes to single forward
+   # slashes to satisfy depend.m4
+   cygpath_u="sed s,\\\\\\\\,/,g"
+   depmode=msvisualcpp
+fi
+
 case "$depmode" in
 gcc3)
 ## gcc 3 implements dependency tracking that does exactly what
@@ -192,14 +199,14 @@ sgi)
 ' < "$tmpdepfile" \
     | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
     tr '
-' ' ' >> $depfile
-    echo >> $depfile
+' ' ' >> "$depfile"
+    echo >> "$depfile"
 
     # The second pass generates a dummy entry for each header file.
     tr ' ' '
 ' < "$tmpdepfile" \
    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> $depfile
+   >> "$depfile"
   else
     # The sourcefile does not contain any dependencies, so just
     # store a dummy comment line, to avoid errors with the Makefile
@@ -328,7 +335,12 @@ hp2)
   if test -f "$tmpdepfile"; then
     sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
     # Add `dependent.h:' lines.
-    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
+    sed -ne '2,${
+	       s/^ *//
+	       s/ \\*$//
+	       s/$/:/
+	       p
+	     }' "$tmpdepfile" >> "$depfile"
   else
     echo "#dummy" > "$depfile"
   fi
@@ -404,7 +416,7 @@ dashmstdout)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
@@ -455,32 +467,39 @@ makedepend)
   "$@" || exit $?
   # Remove any Libtool call
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
   fi
   # X makedepend
   shift
-  cleared=no
-  for arg in "$@"; do
+  cleared=no eat=no
+  for arg
+  do
     case $cleared in
     no)
       set ""; shift
       cleared=yes ;;
     esac
+    if test $eat = yes; then
+      eat=no
+      continue
+    fi
     case "$arg" in
     -D*|-I*)
       set fnord "$@" "$arg"; shift ;;
     # Strip any option that makedepend may not understand.  Remove
     # the object too, otherwise makedepend will parse it as a source file.
+    -arch)
+      eat=yes ;;
     -*|$object)
       ;;
     *)
       set fnord "$@" "$arg"; shift ;;
     esac
   done
-  obj_suffix="`echo $object | sed 's/^.*\././'`"
+  obj_suffix=`echo "$object" | sed 's/^.*\././'`
   touch "$tmpdepfile"
   ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
   rm -f "$depfile"
@@ -500,7 +519,7 @@ cpp)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
@@ -538,13 +557,27 @@ cpp)
 
 msvisualcpp)
   # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout, regardless of -o,
-  # because we must use -o when running libtool.
+  # always write the preprocessed file to stdout.
   "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test "X$1" != 'X--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
   IFS=" "
   for arg
   do
     case "$arg" in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
 	set fnord "$@"
 	shift
@@ -557,16 +590,23 @@ msvisualcpp)
 	;;
     esac
   done
-  "$@" -E |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+  "$@" -E 2>/dev/null |
+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
   echo "	" >> "$depfile"
-  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
+msvcmsys)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
 none)
   exec "$@"
   ;;
@@ -585,5 +625,6 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
diff --git a/docs/Banshee/Makefile.in b/docs/Banshee/Makefile.in
index 945a408..81e3d63 100644
--- a/docs/Banshee/Makefile.in
+++ b/docs/Banshee/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -77,6 +79,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -84,9 +87,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(monodocdir)"
-monodocDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(monodoc_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -206,29 +223,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -263,6 +261,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -304,9 +303,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -419,14 +421,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  docs/Banshee/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  docs/Banshee/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Banshee/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign docs/Banshee/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -444,6 +446,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -453,20 +456,23 @@ clean-libtool:
 install-monodocDATA: $(monodoc_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(monodocdir)" || $(MKDIR_P) "$(DESTDIR)$(monodocdir)"
-	@list='$(monodoc_DATA)'; for p in $$list; do \
+	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(monodocDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(monodocdir)/$$f'"; \
-	  $(monodocDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(monodocdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(monodocdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(monodocdir)" || exit $$?; \
 	done
 
 uninstall-monodocDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(monodoc_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(monodocdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(monodocdir)/$$f"; \
-	done
+	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(monodocdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(monodocdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -490,13 +496,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -527,6 +537,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -547,6 +558,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -555,18 +568,28 @@ install-data-am: install-monodocDATA
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -622,6 +645,7 @@ uninstall-am: uninstall-monodocDATA
 
 merge:
 	monodoc --merge-changes $$HOME/.config/monodoc/changeset.xml .
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/docs/Hyena/Makefile.in b/docs/Hyena/Makefile.in
index 0762455..189e710 100644
--- a/docs/Hyena/Makefile.in
+++ b/docs/Hyena/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -77,6 +79,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -84,9 +87,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(monodocdir)"
-monodocDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(monodoc_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -206,29 +223,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -263,6 +261,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -304,9 +303,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -417,14 +419,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  docs/Hyena/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  docs/Hyena/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Hyena/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign docs/Hyena/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -442,6 +444,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -451,20 +454,23 @@ clean-libtool:
 install-monodocDATA: $(monodoc_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(monodocdir)" || $(MKDIR_P) "$(DESTDIR)$(monodocdir)"
-	@list='$(monodoc_DATA)'; for p in $$list; do \
+	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(monodocDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(monodocdir)/$$f'"; \
-	  $(monodocDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(monodocdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(monodocdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(monodocdir)" || exit $$?; \
 	done
 
 uninstall-monodocDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(monodoc_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(monodocdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(monodocdir)/$$f"; \
-	done
+	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(monodocdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(monodocdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -488,13 +494,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -525,6 +535,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -545,6 +556,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -553,18 +566,28 @@ install-data-am: install-monodocDATA
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -620,6 +643,7 @@ uninstall-am: uninstall-monodocDATA
 
 merge:
 	monodoc --merge-changes $$HOME/.config/monodoc/changeset.xml .
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/docs/Makefile.in b/docs/Makefile.in
index aac0382..7fbdca1 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -398,14 +414,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  docs/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  docs/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign docs/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -423,6 +439,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -437,7 +454,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -454,7 +471,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -462,7 +479,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -488,16 +505,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -505,14 +522,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -524,7 +541,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -533,29 +550,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -576,29 +598,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -628,6 +665,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -647,6 +685,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -655,18 +695,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -687,8 +737,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -704,6 +754,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/extras/Makefile.in b/extras/Makefile.in
index 3a4d381..abe8e61 100644
--- a/extras/Makefile.in
+++ b/extras/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -87,9 +90,37 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -399,14 +415,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  extras/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  extras/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign extras/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign extras/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -424,6 +440,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -438,7 +455,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -455,7 +472,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -463,7 +480,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -489,16 +506,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -506,14 +523,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -525,7 +542,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -534,29 +551,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -577,29 +599,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -629,6 +666,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -648,6 +686,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -656,18 +696,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -688,8 +738,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -705,6 +755,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/extras/metrics/Makefile.in b/extras/metrics/Makefile.in
index e35a736..2a72082 100644
--- a/extras/metrics/Makefile.in
+++ b/extras/metrics/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -425,12 +433,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -482,7 +486,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  extras/metrics/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  extras/metrics/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign extras/metrics/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign extras/metrics/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -740,6 +765,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -747,21 +774,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -783,7 +819,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -851,6 +886,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/gstreamer/Makefile.in b/gstreamer/Makefile.in
index 72815d6..d293bdf 100644
--- a/gstreamer/Makefile.in
+++ b/gstreamer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = equalizer
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -396,14 +412,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  gstreamer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  gstreamer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign gstreamer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign gstreamer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -421,6 +437,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -435,7 +452,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -452,7 +469,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -460,7 +477,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -486,16 +503,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -503,14 +520,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -522,7 +539,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -531,29 +548,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -574,29 +596,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -626,6 +663,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -645,6 +683,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -653,18 +693,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -685,8 +735,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -702,6 +752,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/gstreamer/equalizer/Makefile.in b/gstreamer/equalizer/Makefile.in
index 3016c3e..546aafc 100644
--- a/gstreamer/equalizer/Makefile.in
+++ b/gstreamer/equalizer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -17,8 +18,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -78,14 +80,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(plugindir)"
-pluginLTLIBRARIES_INSTALL = $(INSTALL)
 LTLIBRARIES = $(plugin_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 libgstequalizer_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
@@ -99,6 +116,7 @@ libgstequalizer_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
+am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
@@ -231,29 +249,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -288,6 +287,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -329,9 +329,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -433,14 +436,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/..
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  gstreamer/equalizer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  gstreamer/equalizer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign gstreamer/equalizer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign gstreamer/equalizer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -458,23 +461,28 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
 	test -z "$(plugindir)" || $(MKDIR_P) "$(DESTDIR)$(plugindir)"
-	@list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
+	@list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \
+	list2=; for p in $$list; do \
 	  if test -f $$p; then \
-	    f=$(am__strip_dir) \
-	    echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(plugindir)/$$f'"; \
-	    $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(plugindir)/$$f"; \
+	    list2="$$list2 $$p"; \
 	  else :; fi; \
-	done
+	done; \
+	test -z "$$list2" || { \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(plugindir)'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(plugindir)"; \
+	}
 
 uninstall-pluginLTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
-	  p=$(am__strip_dir) \
-	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(plugindir)/$$p'"; \
-	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(plugindir)/$$p"; \
+	@list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \
+	for p in $$list; do \
+	  $(am__strip_dir) \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(plugindir)/$$f'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(plugindir)/$$f"; \
 	done
 
 clean-pluginLTLIBRARIES:
@@ -499,38 +507,38 @@ distclean-compile:
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
 libgstequalizer_la-gstiirequalizer.lo: gstiirequalizer.c
- at am__fastdepCC_TRUE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -MT libgstequalizer_la-gstiirequalizer.lo -MD -MP -MF $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Tpo -c -o libgstequalizer_la-gstiirequalizer.lo `test -f 'gstiirequalizer.c' || echo '$(srcdir)/'`gstiirequalizer.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Tpo $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Plo
+ at am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -MT libgstequalizer_la-gstiirequalizer.lo -MD -MP -MF $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Tpo -c -o libgstequalizer_la-gstiirequalizer.lo `test -f 'gstiirequalizer.c' || echo '$(srcdir)/'`gstiirequalizer.c
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Tpo $(DEPDIR)/libgstequalizer_la-gstiirequalizer.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstiirequalizer.c' object='libgstequalizer_la-gstiirequalizer.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -c -o libgstequalizer_la-gstiirequalizer.lo `test -f 'gstiirequalizer.c' || echo '$(srcdir)/'`gstiirequalizer.c
+ at am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -c -o libgstequalizer_la-gstiirequalizer.lo `test -f 'gstiirequalizer.c' || echo '$(srcdir)/'`gstiirequalizer.c
 
 libgstequalizer_la-gstiirequalizer10bands.lo: gstiirequalizer10bands.c
- at am__fastdepCC_TRUE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -MT libgstequalizer_la-gstiirequalizer10bands.lo -MD -MP -MF $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Tpo -c -o libgstequalizer_la-gstiirequalizer10bands.lo `test -f 'gstiirequalizer10bands.c' || echo '$(srcdir)/'`gstiirequalizer10bands.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Tpo $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Plo
+ at am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -MT libgstequalizer_la-gstiirequalizer10bands.lo -MD -MP -MF $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Tpo -c -o libgstequalizer_la-gstiirequalizer10bands.lo `test -f 'gstiirequalizer10bands.c' || echo '$(srcdir)/'`gstiirequalizer10bands.c
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Tpo $(DEPDIR)/libgstequalizer_la-gstiirequalizer10bands.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstiirequalizer10bands.c' object='libgstequalizer_la-gstiirequalizer10bands.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -c -o libgstequalizer_la-gstiirequalizer10bands.lo `test -f 'gstiirequalizer10bands.c' || echo '$(srcdir)/'`gstiirequalizer10bands.c
+ at am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstequalizer_la_CFLAGS) $(CFLAGS) -c -o libgstequalizer_la-gstiirequalizer10bands.lo `test -f 'gstiirequalizer10bands.c' || echo '$(srcdir)/'`gstiirequalizer10bands.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -543,14 +551,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -558,29 +566,34 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -601,13 +614,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -638,6 +655,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -660,6 +678,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -668,18 +688,28 @@ install-data-am: install-pluginLTLIBRARIES
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -718,6 +748,7 @@ uninstall-am: uninstall-pluginLTLIBRARIES
 	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
 	tags uninstall uninstall-am uninstall-pluginLTLIBRARIES
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/help/C/search.page b/help/C/search.page
index c71d967..b4f856e 100644
--- a/help/C/search.page
+++ b/help/C/search.page
@@ -71,7 +71,7 @@
   </tr>
   <tr>
     <td><p>NOT, not,<key>-</key></p></td> <td><p>
-    Do not display search results with any search team that follows the 
+    Do not display search results with any search term that follows the 
     operator of NOT, not,<key>-</key>.</p></td>
   </tr>  
          
diff --git a/help/Makefile.am b/help/Makefile.am
index d2445b5..d06b00f 100644
--- a/help/Makefile.am
+++ b/help/Makefile.am
@@ -29,7 +29,7 @@ DOC_PAGES = \
 	sync.page \
 	ui.page
 
-DOC_LINGUAS = de es gl sl
+DOC_LINGUAS = ca de el es gl sl
 dist-hook: doc-dist-hook
 
 endif
diff --git a/help/Makefile.in b/help/Makefile.in
index a8dd01c..b88eac7 100644
--- a/help/Makefile.in
+++ b/help/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -39,8 +40,9 @@
 ################################################################################
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -100,6 +102,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -220,29 +223,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -277,6 +261,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -318,9 +303,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -535,7 +523,7 @@ top_srcdir = @top_srcdir@
 @HAVE_GNOME_DOC_UTILS_TRUE@	sync.page \
 @HAVE_GNOME_DOC_UTILS_TRUE@	ui.page
 
- at HAVE_GNOME_DOC_UTILS_TRUE@DOC_LINGUAS = de es gl sl
+ at HAVE_GNOME_DOC_UTILS_TRUE@DOC_LINGUAS = ca de el es gl sl
 all: all-am
 
 .SUFFIXES:
@@ -543,14 +531,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  help/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  help/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign help/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign help/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -568,6 +556,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -598,13 +587,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -635,6 +628,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -659,6 +653,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -667,18 +663,28 @@ install-data-am: install-data-local
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -1132,6 +1138,7 @@ uninstall-am: uninstall-local
 @HAVE_GNOME_DOC_UTILS_TRUE@	  rm -f "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
 @HAVE_GNOME_DOC_UTILS_TRUE@	done
 @HAVE_GNOME_DOC_UTILS_TRUE at dist-hook: doc-dist-hook
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/help/es/add-podcast.page b/help/ca/add-podcast.page
similarity index 100%
copy from help/es/add-podcast.page
copy to help/ca/add-podcast.page
diff --git a/help/es/add-radio.page b/help/ca/add-radio.page
similarity index 100%
copy from help/es/add-radio.page
copy to help/ca/add-radio.page
diff --git a/help/es/advanced.page b/help/ca/advanced.page
similarity index 100%
copy from help/es/advanced.page
copy to help/ca/advanced.page
diff --git a/help/es/amazon.page b/help/ca/amazon.page
similarity index 100%
copy from help/es/amazon.page
copy to help/ca/amazon.page
diff --git a/help/ca/ca.po b/help/ca/ca.po
new file mode 100644
index 0000000..ad23e9e
--- /dev/null
+++ b/help/ca/ca.po
@@ -0,0 +1,1739 @@
+#
+# This file is distributed under the same license as the banshee package.
+# (c) 2010 Jordi Mas i Hernandez
+# 
+# N.T.: 
+#
+# 1) Atès que "Reproducció ara" és un nom d'una extensió li dono tractament de nom propi
+#
+# 2) Els operadors de consulta (OR, NOT) al programa Banshee no es tradueixen. Cal emprar els termes en anglès
+#
+
+msgid ""
+msgstr ""
+"Project-Id-Version: banshee-help.master\n"
+"POT-Creation-Date: 2010-09-24 18:29+0000\n"
+"PO-Revision-Date: 2010-11-15 10:48+0200\n"
+"Last-Translator: Jordi Mas <jmas at softcatala.org>\n"
+"Language-Team: Catalan\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/ui.page:29(None) C/introduction.page:45(None)
+msgid "@@image: 'figures/banshee.png'; md5=THIS FILE DOESN'T EXIST"
+msgstr "@@image: 'figures/banshee.png'; md5=THIS FILE DOESN'T EXIST"
+
+#: C/ui.page:8(desc)
+msgid "An overview of <app>Banshee's</app> user interface."
+msgstr "Una perspectiva general de la interfície d'usuari del <app>Banshee's</app>."
+
+#: C/ui.page:12(name) C/sync.page:12(name) C/sort.page:12(name)
+#: C/search.page:12(name) C/play.page:12(name) C/play-queue.page:12(name)
+#: C/manage-tags.page:13(name) C/manage-playlists.page:13(name)
+#: C/manage-coverart.page:12(name) C/lastfm.page:12(name)
+#: C/keyboardshortcuts.page:10(name) C/introduction.page:12(name)
+#: C/index.page:9(name) C/import.page:11(name) C/extensions.page:11(name)
+#: C/amazon.page:12(name) C/advanced.page:11(name) C/add-radio.page:14(name)
+#: C/add-podcast.page:14(name)
+msgid "Paul Cutler"
+msgstr "Paul Cutler"
+
+#: C/ui.page:13(email) C/sync.page:13(email) C/sort.page:13(email)
+#: C/search.page:13(email) C/play.page:13(email) C/play-queue.page:13(email)
+#: C/manage-tags.page:14(email) C/manage-playlists.page:14(email)
+#: C/manage-coverart.page:13(email) C/lastfm.page:13(email)
+#: C/keyboardshortcuts.page:11(email) C/introduction.page:13(email)
+#: C/index.page:10(email) C/import.page:12(email) C/extensions.page:12(email)
+#: C/amazon.page:13(email) C/advanced.page:12(email)
+#: C/add-radio.page:15(email) C/add-podcast.page:15(email)
+msgid "pcutler at gnome.org"
+msgstr "pcutler at gnome.org"
+
+#: C/ui.page:24(title)
+msgid "Introduction to the Banshee User Interface"
+msgstr "Introducció a la interfície d'usuari del Banshee"
+
+#: C/ui.page:27(title) C/introduction.page:43(title)
+msgid "<gui>Banshee Media Player</gui> window"
+msgstr "Finestra del </gui>reproductor multimèdia Banshee</gui>"
+
+#: C/ui.page:28(app) C/introduction.page:44(app) C/index.page:21(title)
+msgid "Banshee Media Player"
+msgstr "Reproductor multimèdia Banshee"
+
+#: C/ui.page:30(p) C/introduction.page:46(p)
+msgid "<app>Banshee</app> library interface"
+msgstr "Biblioteca de l'interfície del <app>Banshee</app>"
+
+#: C/ui.page:35(title)
+msgid "Sources"
+msgstr "Fonts"
+
+#: C/ui.page:36(p)
+msgid ""
+"Your music and video sources are shown on the left in Banshee. The sources "
+"give you quick access to your Play Queue, Music, Videos, Amazon, Last.fm, "
+"Podcasts and more."
+msgstr ""
+"Les fonts de música i vídeo es mostren a l'esquerra del Banshee. Les fonts "
+"us donen accés ràpid a la cua de reproducció, música, vídeos, Amazon, Last.fm, "
+"Poscasts i d'altres."
+
+#: C/ui.page:42(p)
+msgid ""
+"The menu choices will change depending on the source you have chosen. For "
+"example, to use the menu to import a Podcast, you will need to choose the "
+"Podcast source. The menu option for importing a Podcast is not available "
+"when viewing the video or music library."
+msgstr ""
+"Les opcions de menú canvien depenent de la font que heu triat. Per exemple, "
+"per a usar el menú per a importar un Podcast, haureu d'escollir la font Podcast. "
+"L'opció del menú per a importar un Podcast no està disponible quan es "
+"visualitza la biblioteca de vídeo o música."
+
+#: C/ui.page:50(title)
+msgid "Library Browser"
+msgstr "Navegador de la biblioteca"
+
+#: C/ui.page:51(p)
+msgid ""
+"When you select a music or video source from Sources, Banshee will display "
+"your content in the Library browser. Depending on the source you choose, "
+"Banshee can display your music or video library, Podcast subscriptions or "
+"even the Amazon Music Store to allow you to buy music."
+msgstr ""
+"Quan escolliu una font de música o vídeo des de «Fonts», el Banshee mostrarà "
+"el contingut al navegador de la biblioteca. Depenent de la font que escolliu, "
+"el Banshee pot reproduir la música, la biblioteca de vídeos, les subscripcions Podcast, o "
+"inclús, mostrar la botiga de música d'Amazon perquè pugueu comprar música."
+
+#: C/ui.page:58(title)
+msgid "Now Playing View"
+msgstr "Vista Reproducció ara"
+
+#: C/ui.page:59(p)
+msgid ""
+"Helpful when using Banshee in full screen mode, the Now Playing mode hides "
+"the library to give you a larger view of the music or video you're watching. "
+"When listening to music, the Now Playing view will show you the artist name, "
+"album and cover art if available. If you are watching a video, Banshee will "
+"display the video."
+msgstr ""
+
+#: C/ui.page:65(p)
+msgid ""
+"To change Now Playing to hide the Banshee user interface and use the full "
+"screen mode, you can press the <key>F</key>, press the <gui>Fullscreen</gui> "
+"button in the upper right hand corner of Banshee, or choose <guiseq>View<gui/"
+">Fullscreen<gui/></guiseq> to start Fullscreen mode."
+msgstr ""
+"Per a què la Reproducció ara amagui l'interfície d'usuari del Banshee i utilitzi  "
+"el mode a pantalla completa, podeu prémer <key>F</key>, el botó <gui>Pantalla completa</gui>"
+"a la part superior dreta del Banshee, o seleccionar <guiseq><gui>Pantalla completa<gui/></guiseq> "
+"per a iniciar el mode pantalla completa."
+
+#: C/ui.page:74(title)
+msgid "Library"
+msgstr "Biblioteca"
+
+#: C/ui.page:75(p)
+msgid ""
+"The Library view in Banshee will change depending on the Source you have "
+"chosen. The Music Library will display cover art, artists in your library, "
+"and list of songs. The Podcast Library will display your Podcast "
+"subscriptions, podcasts that are downloaded or not downloaded, and all, new "
+"or old podcasts. Please see each Source's help page for detailed information "
+"on managing a source."
+msgstr ""
+"La vista biblioteca al Banshee canvia depenent de la font que heu escollit. "
+"La biblioteca mostrarà les cobertes, artistes i llistes de cançons. La biblioteca "
+"Podcast mostrarà les subscripcions a Podcasts, que estan baixats o sense acabar de baixar "
+"o bé Podcasts antics. Vegeu la pàgina d'ajuda per a cada font per a obtenir informació "
+"detallada de com gestionar cada font."
+
+#: C/sync.page:9(desc)
+msgid "Sync your media to a portable media player or smartphone."
+msgstr "Sincronitza els elements multimèdia "
+
+#: C/sync.page:24(title)
+msgid "Sync"
+msgstr "Sincronització"
+
+#: C/sync.page:26(p)
+msgid ""
+"Banshee supports syncing your music to portable media players and "
+"smartphones. You can add specific music tracks, albums or playlist or allow "
+"Banshee to keep your music player in sync with your entire library. After "
+"your player is connected to your computer you can also play back the songs "
+"on your portable player in Banshee. When syncing music in a lossless format, "
+"such as FLAC, Banshee will automatically transcode your music for you to a "
+"lossy format such as Ogg Vorbis or MP3, if you have the correct codecs "
+"installed."
+msgstr ""
+
+#: C/sync.page:37(title)
+msgid "Device Support"
+msgstr "Compatibilitat amb dispositius"
+
+#: C/sync.page:38(p)
+msgid ""
+"Banshee supports almost all modern portable music players and smartphones "
+"with the notable exception of the Apple iPhone, iPad and iPod Touch."
+msgstr "El Banshee es compatible amb la majoria de reproductors de música moderns " 
+"i telèfons intel·ligents amb les excepcions de l'iPhone, l'iPad i l'iPod Touch d'Apple."
+
+#: C/sync.page:42(p)
+msgid ""
+"When you plug your device in, Banshee will display it in the left menu. "
+"Pressing the device icon will take you to your device home page in Banshee "
+"displaying your sync preferences."
+msgstr "Quan connecteu un dispositiu, el Banshee el mostrarà al menú esquerre. "
+"Al pressionar la icona del dispositiu anireu a la pàgina inicial del dispositiu "
+"mostrant les preferències de sincronització."
+
+#: C/sync.page:50(title)
+msgid "Sync Your Music"
+msgstr "Sincronització de la música"
+
+#: C/sync.page:51(p)
+msgid ""
+"You can choose to manage the media on your portable music by having Banshee "
+"automatically sync it or manage your music and media manually."
+msgstr ""
+"Podeu escollir gestionar els elements multimèdia al dispositiu portable permetent "
+"al Banshee sincronitzar-se automàticament o gestionant la música i elements multimèdia manualment."
+
+#: C/sync.page:56(p)
+msgid ""
+"Choose your device from the Banshee menu and then choose how you want to "
+"sync your media, including:"
+msgstr ""
+"Escolliu el dispositiu des del menú del Banshee i llavors trieu com voleu "
+"sincronitzar els elements multimèdia, incloent-hi:"
+
+#: C/sync.page:60(p)
+msgid "Music"
+msgstr "Música"
+
+#: C/sync.page:61(p)
+msgid "Audiobooks"
+msgstr "Audiollibres"
+
+#: C/sync.page:62(p)
+msgid "Videos"
+msgstr "Vídeos"
+
+#: C/sync.page:63(p)
+msgid "Podcast"
+msgstr "Podcast"
+
+#: C/sync.page:66(p)
+msgid "From the dropdown menu next to each of the media, choose from:"
+msgstr "Des del menú desplegable al costat de cada element multimèdia, escolliu:"
+
+#: C/sync.page:69(p)
+msgid "Manage manually"
+msgstr "Gestiona manualment"
+
+#: C/sync.page:70(p)
+msgid "Sync entire library"
+msgstr "Sincronitza la biblioteca sencera"
+
+#: C/sync.page:74(p)
+msgid ""
+"If you choose to sync your entire library automatically with your portable "
+"media player make sure your portable media player has enough storage space. "
+"If your library is larger than the space on your portable media player, "
+"Banshee will sync media until your player is full and then stop."
+msgstr ""
+
+#: C/sync.page:82(p)
+msgid ""
+"If you have created playlists or smart playlists in your music library, they "
+"will also be displayed as a sync option for Music. This can be helpful when "
+"creating smart playlists, as smart playlists will automatically update as "
+"new content is added based on the playlist rules, and Banshee will sync the "
+"new playlist to your device every time you plug it in."
+msgstr ""
+
+#: C/sync.page:89(p)
+msgid ""
+"Banshee will display the total hard drive space of your portable music "
+"player in a graph in the bottom center of Banshee. The graph will show you "
+"how much space is taken by audio files, video, other and free space. "
+"Directly below that Banshee will show you how many total items are stored on "
+"your portable music player, how many hours or days of listening that is "
+"equal to, and total space used."
+msgstr ""
+
+#: C/sync.page:100(title)
+msgid "Sync Your Entire Library"
+msgstr "Sincronització de la biblioteca sencera"
+
+#: C/sync.page:101(p)
+msgid ""
+"You can drag and drop media to your portable music player form Banshee. "
+"Select the file or files you want to copy to your portable media player and "
+"then press and hold your right mouse button and drag the file(s) to your "
+"portable media player icon in Banshee. This will copy the files to your "
+"device."
+msgstr ""
+
+#: C/sync.page:108(p)
+msgid ""
+"If your music library is encoded in a format that your portable media player "
+"does not support, such as OGG or FLAC, and you have the necessary codecs "
+"installed, Banshee can automatically transcode these files to MP3 when "
+"transferring to your portable media player. Check with your Linux "
+"distribution for the necessary codecs as it is outside the scope of this "
+"help and varies by distribution."
+msgstr ""
+
+#: C/sync.page:117(p)
+msgid ""
+"You may need to eject your device to load the files correctly on your "
+"portable music player. To eject your device in Banshee, using your mouse "
+"right click the device in the Banshee menu and press <gui>Disconnect</gui>."
+msgstr ""
+
+#: C/sync.page:127(title)
+msgid "Play Music From Your Portable Music Player"
+msgstr "Reproducció de la música des del reproductor portable"
+
+#: C/sync.page:128(p)
+msgid ""
+"You can play music stored on your portable music player directly in Banshee. "
+"Choose your player in the Banshee menu on the left and your portable music "
+"player's library will be displayed. You can then play music in Banshee just "
+"as you would music in your own library."
+msgstr ""
+#: C/sync.page:135(title)
+msgid "Remove Music From your Portable Music Player"
+msgstr "Suprimeix la música des del reproductor portable"
+
+#: C/sync.page:136(p)
+msgid ""
+"To remove songs stored on your portable music player, choose your player in "
+"Banshee to view its library. Then choose the tracks you would like to remove "
+"and right click the tracks and choose \"Delete\" or from the menu choose "
+"<guiseq><gui>Edit</gui><gui>Delete</gui></guiseq>."
+msgstr ""
+
+#: C/sync.page:142(p)
+msgid ""
+"Deleting files from your portable music will permanently remove the files "
+"and you will not be able to recover them."
+msgstr ""
+
+#: C/sort.page:9(desc)
+msgid "Sort your media and add additional columns."
+msgstr "Ordeneu els elements multimèdia i afegiu columnes addicionals."
+
+#: C/sort.page:24(title)
+msgid "Sort your media"
+msgstr "Ordenació dels elements multimèdia"
+
+#: C/sort.page:28(title)
+msgid "Adding Columns"
+msgstr "Afegir columnes"
+
+# N.T.: Com traduïm 'to play search'
+#: C/sort.page:30(p)
+msgid ""
+"As your library grows, you may want to sort your library view to play search "
+"or view certain songs, artists, or albums."
+msgstr ""
+"A mida que la biblioteca creix, potser voleu ordenar la vista biblioteca per "
+"certes cançons, artistes o àlbums."
+
+#: C/sort.page:34(p)
+msgid ""
+"You can add additional columns to the library view in <app>Banshee</app> to "
+"give you more information about the songs and also allow you to sort by. By "
+"default, Banshee displays columns for songs including <gui>Name</gui>, "
+"<gui>Artist</gui>, <gui>Album</gui> and <gui>Time</gui>. To add additional "
+"columns, using your mouse right click on any of the columns and Banshee will "
+"display all available column to choose from. Click the checkbox next to the "
+"name of the column you wish to add to the library view."
+msgstr ""
+"Podeu afegir columnes addicionals a la vista biblioteca del <app>Banshee</app> per "
+"disposar de més informació sobre les cançons, a més de poder-les ordenar. "
+"Per defecte, per a cançons, el Banshee mostra les columnes <gui>Nom</gui>, "
+"<gui>Artista</gui>, <gui>Àlbum</gui> i <gui>Temps</gui>. Per a afegir columnes "
+"addicionals, feu un clic amb el botó dret del ratolí a qualsevol de les columnes i el "
+"Banshee mostrarà totes les columnes disponibles. Feu clic a la casella de selecció "
+"al costat del nom de la columna que desitgeu afegir a la vista biblioteca."
+
+#: C/sort.page:46(title)
+msgid "Sorting Columns"
+msgstr "Ordenació de columnes"
+
+#: C/sort.page:47(p)
+msgid ""
+"You can sort your library by using your mouse to click on any of the columns "
+"displayed in library view. If you wish to sort your music library by Artist, "
+"click the <gui>Artist</gui> column header and Banshee will automically sort "
+"that column alphabetically. Clicking the <gui>Artist</gui> column again will "
+"sort the column in reverse alphabetical order."
+msgstr ""
+"Podeu ordenar la biblioteca utilitzant el ratolí fent clic a qualsevol de les "
+"columnes mostrades en la vista biblioteca. Si voleu ordenar la biblioteca per "
+"artista, feu clic a la capçalera de la columna <gui>Artista</gui> i el Banshee "
+"ordenarà automàticament la columna alfabèticament. Fent clic a la columna "
+"<gui>Artista</gui> de nou ordenarà la columna en ordre alfabètic invers."
+
+#: C/search.page:9(desc)
+msgid "Search your media and perfom basic queries."
+msgstr "Cerqueu els elements multimèdia i realitzeu consultes bàsiques."
+
+#: C/search.page:24(title)
+msgid "Searching your Banshee Library"
+msgstr "Cercant a la biblioteca"
+
+#: C/search.page:26(p)
+msgid ""
+"Banshee features a powerful search language. You can search your library "
+"quickly and easily with basic search terms or perform detailed searches with "
+"Banshee's advanced search terminology."
+msgstr ""
+"El Banshee disposa d'un llenguatge de cerca potent. Podeu cercar la biblioteca "
+"de forma ràpida i senzilla utilitzant termes de cerca bàsics o bé realitzant "
+"cerques detallades amb la terminologia de cerca avançada del Banshee."
+
+#: C/search.page:30(p)
+msgid ""
+"To perform a search of your media in Banshee, press the <key>S</key> or "
+"click the <gui>Search</gui> box in the upper right hand corner of the "
+"Library view in Banshee."
+msgstr ""
+"Per a realitzar cerques dels vostres elements multimèdia al Banshee, premeu la tecla <key>S</key> "
+"o feu clic en la capsa <gui>Cerca</gui> a la part superior dreta de la vista biblioteca al Banshee."
+
+# English typo "meaningyou" -> "meaning you" 
+#: C/search.page:35(p)
+msgid ""
+"A search query consists of some basic terms, for example, <em>dave matthews</"
+"em>. By entering <em>dave matthews</em> in the search box, Banshee will "
+"search all metatdata fields including Track Title, Album Title, Album "
+"Artist, Year, etc. Any track whose metadata includes <em>dave</em> and "
+"<em>matthews</em> will be returned. Search terms are case, meaningyou don't "
+"have to capitalize. <em>dave</em>, <em>Dave</em>, and <em>DAVE</em> all mean "
+"the same thing when searching."
+msgstr ""
+"Una consulta de cerca consisteix d'algunes termes bàsics, per exemple, <em>lluís llach</"
+"em>. En introduir <em>lluís llach</em> en la capsa de cerca, el Banshee cercarà "
+"a tots els camps de metadades, incloent-hi el títol de la cançó, el títol de l'àlbum, l'artista, "
+"l'any, etc. Qualsevol cançó que inclogui en les seves metadades  <em>lluís</em> i "
+"<em>llach</em> serà retornada. La cerca de termes no diferència entre majúscules i minúscules. "
+"Els termes <em>lluís</em>, <em>Lluís</em>, i <em>LLUÍS</em> tenen el mateix "
+"significat al fer una cerca."
+
+#: C/search.page:43(titl
+msgid "Basic Operators"
+msgstr "Operadors bàsics"
+
+#: C/search.page:44(p)
+msgid ""
+"Operators can be placed between any two search words or placed before a "
+"search word. The default operation is <gui>AND</gui> and is used when no "
+"other operators are used between two search terms. Because it is the "
+"default, there is no explicit AND operator."
+msgstr ""
+"Els operadors poden col·locar-se entre dues paraules de cerca o col·locar-se "
+"abans d'una paraula de cerca. L'operació per defecte és <gui>i</gui> i s'utilitza "
+"quan cap altre operador es emprat entre dos termes de cerca. Atès que és el predeterminat, "
+"no existeix l'operador I explícitament."
+
+#: C/search.page:49(p)
+msgid ""
+"Other basic operators include <gui>OR</gui> and <gui>NOT</gui>. Together, "
+"these three operations can yield very powerful queries to help you search "
+"your media."
+msgstr ""
+"Altres operadors bàsics inclouen l'<gui>OR</gui> i el <gui>NOT</gui>. Junts, "
+"aquests tres operadors permeten consultes molt potents per ajudar-vos a cercar "
+"als elements multimèdia."
+
+#: C/search.page:56(title)
+msgid "Logical Operators and Examples"
+msgstr "Operadors lògics i exemples"
+
+#: C/search.page:57(p)
+msgid ""
+"The following is a list of logical operators and examples of the search "
+"results when searching using them."
+msgstr ""
+"A continuació es mostra una llista d'operadors lògics i exemples de resultats de "
+"cerques realitzes amb operadors lògics."
+
+#: C/search.page:62(gui)
+msgid "Operator"
+msgstr "Operador"
+
+#: C/search.page:62(gui) C/search.page:84(gui)
+msgid "Description"
+msgstr "Descripció"
+
+#: C/search.page:65(p)
+msgid "<em>default</em>, <em>white space</em>"
+msgstr "<em>per defecte</em>, <em>espai en blanc</em>"
+
+#: C/search.page:65(p)
+msgid "Search for two terms with a space between the two words or terms."
+msgstr "Cerca dos termes amb un espai entre les dos paraules o termes."
+
+#: C/search.page:69(p)
+msgid "OR, or, <key>|</key>, <key>,</key>"
+msgstr "O, o, <key>|</key>, <key>,</key>"
+
+#: C/search.page:69(p)
+msgid "Search results will be two terms with either result in any field."
+msgstr "Els resultats de la cerca seran les cançons que continguin els dos termes en qualsevol camp."
+
+#: C/search.page:73(p)
+msgid "NOT, not,<key>-</key>"
+msgstr "NO, no,<key>-</key>"
+
+#: C/search.page:73(p)
+msgid ""
+"Do not display search results with any search team that follows the operator "
+"of NOT, not,<key>-</key>."
+msgstr ""
+"Exclou dels resultats de la cerca qualsevol terme que aparegui després de l'operador "
+"NO, no, <key>-</key>."
+
+#: C/search.page:80(p)
+msgid "Examples of logical operations include:"
+msgstr "Els exemples d'operacions lògiques inclouen:"
+
+#: C/search.page:84(gui)
+msgid "Query"
+msgstr "Consulta"
+
+#: C/search.page:87(p)
+msgid "dave matthews"
+msgstr "lluís llach"
+
+#: C/search.page:87(p)
+msgid ""
+"Matches any fields in a track containing both <em>dave</em> and "
+"<em>matthews</em>."
+msgstr ""
+"Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em>"
+"i <em>llach</em> (ambdós) en qualsevol dels camps."
+
+#: C/search.page:92(p)
+msgid "dave, matthews"
+msgstr "lluís, llach"
+
+#: C/search.page:92(p) C/search.page:97(p) C/search.page:102(p)
+msgid ""
+"Matches any fields in a track containing both <em>dave</em> or <em>matthews</"
+"em>."
+msgstr ""
+"Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em> "
+"o <em>llach</em> en qualsevol dels camps."
+
+#: C/search.page:97(p)
+msgid "dave or matthews"
+msgstr "lluís o llach"
+
+#: C/search.page:102(p)
+msgid "dave | matthews"
+msgstr "lluís | llach"
+
+#: C/search.page:107(p)
+msgid "-\"dave matthews\""
+msgstr "-\"lluís llach\""
+
+#: C/search.page:107(p)
+msgid ""
+"Displays all tracks whose fields do not containt <em>dave matthews</em>."
+msgstr ""
+"Mostra totes les cançons que no continguin <em>lluís llach</em>."
+
+#: C/search.page:114(p)
+msgid ""
+"For more information on performing more complex search queries, see the "
+"<link xref=\"adv-search\"/> page."
+msgstr ""
+"Per a més informació sobre com realitzar consultes de cerca complexes, vegeu "
+"la pàgina <link xref=\"adv-search\"/>."
+
+#: C/rb-import.page:8(desc)
+msgid ""
+"Import music and categorizations from the <app>Rhythmbox</app> music player."
+msgstr ""
+"Importeu la música i les categoritzacions del reproductor de música <app>Rhythmbox</app>."
+
+#: C/rb-import.page:12(title)
+msgid "Import your <app>Rhythmbox</app> library"
+msgstr "Importació la biblioteca del <app>Rhythmbox</app>"
+
+#: C/play.page:9(desc)
+msgid "Play your videos and music files."
+msgstr "Reproduïu els vostres fitxers amb vídeo i música."
+
+#: C/play.page:24(title)
+msgid "Play Your Media"
+msgstr "Reproducció d'elements multimèdia"
+
+#: C/play.page:27(title)
+msgid "Play your music"
+msgstr "Reproducció de la música"
+
+#: C/play.page:29(p)
+msgid ""
+"To play music in Banshee, choose the Music source. The music library will "
+"show you all artists in your music library, cover art for each album, and a "
+"list of all songs in your library."
+msgstr ""
+"Per a reproduir música al Banshee escolliu la font de la música. La biblioteca de música "
+"mostrarà tots els artistes de la biblioteca, cobertes per cada àlbum i la llista "
+"de les cançons que hi ha a la biblioteca."
+
+#: C/play.page:33(p)
+msgid ""
+"Choose the album or song you wish to play from the list of artists, albums "
+"or use the search bar in the upper right hand corner of Banshee."
+msgstr ""
+"Escolliu l'àlbum o cançó que desitgeu reproduir de la llista d'artistes, àlbums "
+"o utilitzeu la barra de cerca de la part superior dreta del Banshee."
+
+# TODO: Veure els noms de les opcions en el Banshee en català
+#: C/play.page:37(p)
+msgid ""
+"To start playing a song, use your mouse to double click the song name, press "
+"the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</"
+"gui></guiseq> from the Banshee menu."
+msgstr ""
+"Per començar a reproduir una cançó, utilitzeu el ratolí fent doble clic al nom de la cançó, "
+"premeu la tecla <key>barra espaiadora</key>, o escolliu <guiseq><gui>Playback</gui><gui>Play</"
+"gui></guiseq> from the Banshee menu."
+
+
+# TODO: Veure els noms de les opcions en el Banshee en català
+#: C/play.page:42(p)
+msgid ""
+"You can also start playing an album by choosing the album in the album "
+"browser and pressing use your mouse to double click the song name, press the "
+"<key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></"
+"guiseq> from the Banshee menu."
+msgstr ""
+"Podeu començar a reproduir un àlbum escollint-lo al navegador d'àlbums "
+"i fent clic amb el ratolí al nom de la cançó, prement la tecla "
+"<key>barra espaiadora</key>, o seleccionant <guiseq><gui>Playback</gui><gui>Play</gui> "
+"guiseq> des del menú del Banshee."
+
+#: C/play.page:48(p)
+msgid ""
+"To play all songs by one artist, choose the artist in the artist browser and "
+"press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</"
+"gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr ""
+
+#: C/play.page:53(p)
+msgid ""
+"Banshee also displays your Favorite albums (those you play the most), Recent "
+"Favorites, Recently Added and Unheard music. Choose the one you wish to "
+"listen to and you can play songs from each."
+msgstr ""
+
+#: C/play.page:61(title)
+msgid "Play a video"
+msgstr "Reproducció d'un vídeo"
+
+#: C/play.page:63(p)
+msgid ""
+"Your imported videos are listed alphabetically. To play a video, choose the "
+"video you wish to play from the list and press the <key>Spacebar</key>, or "
+"choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee "
+"menu."
+msgstr ""
+
+#: C/play.page:68(p)
+msgid ""
+"Banshee also shows your Favorite videos (those you watch the most) and "
+"Unwatched videos. Choose one and you can play a video from the list."
+msgstr ""
+
+#: C/play.page:74(title)
+msgid "Play a Podcast"
+msgstr "Reproducció d'un Podcast"
+
+#: C/play.page:76(p)
+msgid ""
+"Podcasts shows you all Podcasts you're subscribed too, all Podcast shows "
+"available, and the Podcast browser lists all Podcasts in order of newest "
+"first."
+msgstr ""
+
+#: C/play.page:80(p)
+msgid ""
+"To play a Podcast, choose the Podcast you wish to play from the list and "
+"press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</"
+"gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr ""
+
+#: C/play.page:88(title)
+msgid "Play an internet radio station"
+msgstr ""
+
+#: C/play.page:90(p)
+msgid ""
+"The Radio source shows you all internet radio stations you have added to "
+"Banshee alphabetically."
+msgstr ""
+
+#: C/play.page:94(p)
+msgid ""
+"To play an internet radio station, choose the radio station you wish to play "
+"from the list and press the <key>Spacebar</key>, or choose "
+"<guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr ""
+
+#: C/play-queue.page:9(desc)
+msgid "Add media to your play queue."
+msgstr ""
+
+#: C/play-queue.page:18(title)
+msgid "Play Queue"
+msgstr ""
+
+#: C/play-queue.page:20(p)
+msgid ""
+"The <gui>Play Queue</gui> allows you to add music to play in a sequential "
+"order. You can add many tracks to let you listen to hours of music non-stop. "
+"You can add individual tracks or entire albums, and sort or re-order them."
+msgstr ""
+
+#: C/play-queue.page:26(title)
+msgid "Add Music to the Play Queue"
+msgstr ""
+
+#: C/play-queue.page:28(p)
+msgid ""
+"From your music library, you will need to select the music tracks or albums "
+"you want to add to the play queue."
+msgstr ""
+
+#: C/play-queue.page:32(p)
+msgid ""
+"To add an entire album to the Play Queue, using your mouse press and hold "
+"the album and drag the album over <gui>Play Queue</gui> in the far left "
+"window pane."
+msgstr ""
+
+#: C/play-queue.page:37(p)
+msgid ""
+"You can add music tracks to the Play Queue individually or as a group. To "
+"add an individual file, drag and drop it over the <gui>Play Queue</gui> in "
+"the far left window pane, or right click the track and choose <gui>Add to "
+"Play Queue</gui>."
+msgstr ""
+
+#: C/play-queue.page:43(p)
+msgid ""
+"You can select multiple files by using your mouse and pressing <key>Control</"
+"key> and choosing each file with your mouse or select a range of files by "
+"pressing <key>Shift</key> twice to select that range of files. You can then "
+"drag and drop it over the <gui>Play Queue</gui> in the far left window pane "
+"or right click the tracks and choose <gui>Add to Play Queue</gui>."
+msgstr ""
+
+#: C/play-queue.page:56(title)
+msgid "Organize Your Play Queue"
+msgstr ""
+
+#: C/play-queue.page:58(p)
+msgid ""
+"Your Play Queue is organized in the order of the tracks you added. The first "
+"tracks or albums you added to the queue will be the first to be played. You "
+"can re-order your Play Queue by using your mouse and dragging and dropping a "
+"track or group of tracks in the list. Choose the track(s) you wish to re-"
+"order with your mouse and release your mouse over the number or place in the "
+"list you wish those files to be in the queue."
+msgstr ""
+
+#: C/play-queue.page:70(title)
+msgid "Removing Tracks from the Play Queue"
+msgstr ""
+
+#: C/play-queue.page:72(p)
+msgid ""
+"You can remove an individual track, a group of tracks, or clear your entire "
+"play queue."
+msgstr ""
+
+#: C/play-queue.page:76(p)
+msgid ""
+"To remove an individual track or group of tracks, select the track with your "
+"mouse and then press <key>Delete</key>."
+msgstr ""
+
+#: C/play-queue.page:80(p)
+msgid ""
+"To clear your entire Play Queue, press the <gui>Clear</gui> button in the "
+"upper right hand corner of the Play Queue."
+msgstr ""
+
+#: C/manage-tags.page:10(desc)
+msgid "Edit and change music tags and metadata."
+msgstr ""
+
+#: C/manage-tags.page:25(title)
+msgid "Music Metadata"
+msgstr ""
+
+#: C/manage-tags.page:29(title)
+msgid "Music metadata"
+msgstr ""
+
+#: C/manage-tags.page:31(p)
+msgid ""
+"Digital music contains metadata that stores information in the music file "
+"including the artist, album, year recorded, genre, and more. Almost all "
+"music purchased over the internet will have the metadata already embedded "
+"and if you import music from CDs, Banshee will include the metadata when "
+"ripping the CD if available. For more information on ripping CDs and "
+"including the metadata see the <link xref=\"import\"/>."
+msgstr ""
+
+#: C/manage-tags.page:39(p)
+msgid ""
+"Popular metadata formats are ID3v1 and ID3v2 for MP3 files and Vorbis "
+"comments for OGG Vorbis files."
+msgstr ""
+
+#: C/manage-tags.page:42(p)
+msgid ""
+"If you have imported songs that do not contain metadata, <app>Banshee</app> "
+"will display <gui>Unknown</gui> for most fields in the library."
+msgstr ""
+
+#: C/manage-tags.page:50(title)
+msgid "Edit Your Metadata"
+msgstr ""
+
+#: C/manage-tags.page:52(p)
+msgid ""
+"You can change and edit the metadata of your songs. Select the song or songs "
+"you want to update and hit the <key>E</key>, choose <guiseq><gui>Edit</"
+"gui><gui>Edit Track Information</gui></guiseq> from the menu, or use your "
+"mouse and right click on the files and select <gui>Edit Track Information</"
+"gui>."
+msgstr ""
+
+#: C/manage-tags.page:59(p)
+msgid ""
+"A dialog box will appear that shows the song's metadata and allow you to "
+"change or update it. The default fields displayed include:"
+msgstr ""
+
+#: C/manage-tags.page:63(gui)
+msgid "Track Title:"
+msgstr ""
+
+#: C/manage-tags.page:64(gui)
+msgid "Track Artist"
+msgstr ""
+
+#: C/manage-tags.page:65(gui)
+msgid "Album Title"
+msgstr ""
+
+#: C/manage-tags.page:66(gui)
+msgid "Genre"
+msgstr ""
+
+#: C/manage-tags.page:67(gui)
+msgid "Track Number"
+msgstr ""
+
+#: C/manage-tags.page:68(gui)
+msgid "Disc Number"
+msgstr ""
+
+#: C/manage-tags.page:69(gui) C/manage-playlists.page:109(gui)
+msgid "Year"
+msgstr ""
+
+#: C/manage-tags.page:72(p)
+msgid ""
+"Update the song's information. If you have selected multiple songs to edit "
+"press the right arrow icon to the right of the <gui>Track Title</gui> field "
+"or press the <gui>Forward</gui> button at the bottom of the dialog when "
+"finished with each song. When you have completed editing all metadata, press "
+"<gui>Save</gui>."
+msgstr ""
+
+#: C/manage-playlists.page:10(desc)
+msgid "Create and manage playlists."
+msgstr ""
+
+#: C/manage-playlists.page:19(title)
+msgid "Playlists"
+msgstr ""
+
+#: C/manage-playlists.page:21(p)
+msgid ""
+"Playlists allow you to create and save a list of music tracks to be played "
+"in a specific order. Playlists are convenient to create a list of your "
+"favorite songs or to split your library into smaller lists that are easy to "
+"browse through. Some portable media players even allow you to transfer the "
+"playlist so you can take it with you on the go."
+msgstr ""
+
+#: C/manage-playlists.page:28(p)
+msgid ""
+"Banshee supports normal playlists, which include songs you add to the "
+"playlist, as well as smart playlists. Smart Playlists are automatically "
+"generated playlists based on your listening habits, favorite music, or more."
+msgstr ""
+
+#: C/manage-playlists.page:34(title)
+msgid "Normal Playlists"
+msgstr ""
+
+#: C/manage-playlists.page:36(p)
+msgid ""
+"A normal playlist is a list of songs that you add and manage. You might want "
+"to create your own list of songs by your favorite artist from multiple "
+"albums, your latest favorite songs, or an upbeat playlist to listen to while "
+"you exercise."
+msgstr ""
+
+#: C/manage-playlists.page:42(p)
+msgid ""
+"You can create a new playlist by pressing <keyseq><key>Control</key><key>N</"
+"key></keyseq>, from the menu choosing <guiseq><gui>Menu</gui><gui>New "
+"Playlist</gui></guiseq> or by selecing the track(s) you would like to add to "
+"the playlist. Select the track(s), right click them, and choose "
+"<guiseq><gui>Add to Playlist</gui><gui>New Playlist</gui></guiseq>. You can "
+"also drag and drop them to a new playlist by selcting the track(s) and "
+"dragging them to the left hand window pane over <gui>Music</gui>. As you "
+"drag it over <gui>Music</gui>, a new option <gui><em>New Playlist</em></gui> "
+"will appear and you can drop the track(s) over <gui><em>New Playlist</em></"
+"gui> to add them to the playlist. You can repeat this process until you have "
+"added all the tracks you want in the playlist."
+msgstr ""
+
+#: C/manage-playlists.page:56(p)
+msgid ""
+"To give your playlist its own name, select the playlist and right click on "
+"the playlist and press <gui>Rename Playlist</gui> and enter the name of your "
+"playlist."
+msgstr ""
+
+#: C/manage-playlists.page:61(p)
+msgid ""
+"You can change the order of the playlist by dragging and dropping the song "
+"to the new position in the playlist. Songs can only be re-ordered in the "
+"playlist when none of the columns are sorted. To unsort a column, press the "
+"column until the up or down arrow is no longer showing and the column is "
+"blank and then re-order the playlist."
+msgstr ""
+
+#: C/manage-playlists.page:68(p)
+msgid ""
+"To remove a track from the playlist, select the track(s) you wish to remove. "
+"Press the <key>Delete</key>, from the menu choose <guiseq><gui>Edit</"
+"gui><gui>Remove from Playlist</gui></guiseq> or right click the track(s) "
+"with your mouse and press <gui>Remove from Playlist</gui>."
+msgstr ""
+
+#: C/manage-playlists.page:76(title)
+msgid "Smart Playlist"
+msgstr ""
+
+#: C/manage-playlists.page:78(p)
+msgid ""
+"Smart Playlists allow you to quickly generate a dynamic playlist based on a "
+"number of pre-set variables. You can quickly create a new playlist based on "
+"a specific artist, favorites or more."
+msgstr ""
+
+#: C/manage-playlists.page:83(p)
+msgid ""
+"To create a new Smart Playlist, from the menu choose <guiseq><gui>Media</"
+"gui><gui>New Smart Playlist</gui></guiseq>. You will be presented with a "
+"dialog to create a new Smart Playlist. Enter the name of your playlist and "
+"then choose the criteria your playlist should be based on. You can choose "
+"from any field included in the song's meatadata, such as Album, Artist or "
+"Year. Choose the criteria and then choose from one of the following:"
+msgstr ""
+
+#: C/manage-playlists.page:93(p) C/manage-playlists.page:109(gui)
+#: C/manage-playlists.page:113(gui)
+msgid "is"
+msgstr ""
+
+#: C/manage-playlists.page:94(p)
+msgid "is not"
+msgstr ""
+
+#: C/manage-playlists.page:95(p)
+msgid "less than"
+msgstr ""
+
+#: C/manage-playlists.page:96(p)
+msgid "more than"
+msgstr ""
+
+#: C/manage-playlists.page:97(p)
+msgid "at most"
+msgstr ""
+
+#: C/manage-playlists.page:98(p)
+msgid "at least"
+msgstr ""
+
+#: C/manage-playlists.page:101(p)
+msgid ""
+"You can also press the <gui>+</gui> button to add an addition query to the "
+"Smart Playlist. For example, you could create a smart playlist that includes "
+"all songs from 2010 that you rated 5 stars. To create this playlist you "
+"would choose:"
+msgstr ""
+
+#: C/manage-playlists.page:110(gui)
+msgid "2010"
+msgstr ""
+
+#: C/manage-playlists.page:113(gui)
+msgid "Rating"
+msgstr ""
+
+#: C/manage-playlists.page:114(p)
+msgid "<gui/>5 stars"
+msgstr ""
+
+#: C/manage-playlists.page:118(p)
+msgid ""
+"You can then optionally select how many songs are included by pressing the "
+"<gui>Limit</gui> to checkbox and choosing the number of songs to be included."
+msgstr ""
+
+#: C/manage-playlists.page:123(p)
+msgid ""
+"Banshee also includes smart playlists already created for you. Press the "
+"<gui>Open in editor</gui> button to view how the playlist created was or to "
+"modify it. If you press <gui>Create and save</gui> the playlist will be "
+"automatically generated and saved for you. The following playlists are "
+"included:"
+msgstr ""
+
+#: C/manage-playlists.page:131(title)
+msgid "Banshee Smart Playlists"
+msgstr ""
+
+#: C/manage-playlists.page:132(p)
+msgid "Favorites (Songs rated four and five stars)"
+msgstr ""
+
+#: C/manage-playlists.page:133(p)
+msgid "Recent Favorites (Songs listened to often in the past week)"
+msgstr ""
+
+#: C/manage-playlists.page:135(p)
+msgid "Recently Added (Songs imported within the last week"
+msgstr ""
+
+#: C/manage-playlists.page:136(p)
+msgid "Unheard (Songs that have not been played or skipped)"
+msgstr ""
+
+#: C/manage-playlists.page:137(p)
+msgid "Neglected Favorites (Favorites not played in over two months)"
+msgstr ""
+
+#: C/manage-playlists.page:139(p)
+msgid "700 MB of Favorites (A data CD worth of favorite songs)"
+msgstr ""
+
+#: C/manage-playlists.page:140(p)
+msgid "80 Minutes of Favorites (An audio CD worth of favorite songs)"
+msgstr ""
+
+#: C/manage-playlists.page:142(p)
+msgid "Unrated (Songs that haven't been rated)"
+msgstr ""
+
+#: C/manage-coverart.page:9(desc)
+msgid "Manage or change your albums cover art."
+msgstr ""
+
+#: C/manage-coverart.page:24(title)
+msgid "Cover art"
+msgstr ""
+
+#: C/lastfm.page:9(desc)
+msgid "Enable Last.fm, song reporting and Last.fm radio."
+msgstr ""
+
+#: C/lastfm.page:24(title)
+msgid "Last.fm"
+msgstr ""
+
+#: C/lastfm.page:26(p)
+msgid ""
+"Last.fm is a popular online service that offers both free and paid versions. "
+"Last.fm offers information on music artists and albums and if you create a "
+"user profile Last.fm allows you to track the music you listen to in Banshee "
+"for free. If you suscribe as a paying member, you can also listen to "
+"streaming music from Last.fm in various music clients, including Banshee. "
+"Last.fm offers multiple channels to stream, including recommended music for "
+"you based on your listening habits, your favorites and more."
+msgstr ""
+
+#: C/lastfm.page:35(title)
+msgid "Enable Last.fm"
+msgstr ""
+
+#: C/lastfm.page:36(p)
+msgid ""
+"To get the most out of Last.fm, you will want to create a Last.fm profile. "
+"Visit <link href=\"http://www.last.fm/join\">http://www.last.fm/join</link> "
+"to create an account or choose <guiseq><gui>Edit</gui><gui>Preferences</"
+"gui></guiseq> from the Banshee menu. Then press the <gui>Source Specific</"
+"gui> tab and press the <gui>Source</gui> drop down menu and choose <gui>Last."
+"fm</gui> and select the <em>Sign up for Last.fm</em> link."
+msgstr ""
+
+#: C/lastfm.page:45(p)
+msgid ""
+"To enable Banshee to report the songs you play on your computer to Last.fm, "
+"sign in to Last.fm in Banshee in the <gui>Source Specific</gui> preferences. "
+"Enter your username and press the <gui>Log in to Last.fm</gui> button. You "
+"will be directed to a Last.fm webpage in your browser to grant Banshee "
+"access. Press the <gui>Yes, allow access</gui> link in your browser and you "
+"will be redirected to a webpage that displays a message that Banshee now has "
+"access to Last.fm. Return to Banshee and press the <gui>Finish Logging In</"
+"gui> button to complete the process."
+msgstr ""
+
+#: C/lastfm.page:58(title)
+msgid "Enable Last.fm Song Reporting"
+msgstr ""
+
+#: C/lastfm.page:59(p)
+msgid ""
+"After you have successfully linked Banshee to your Last.fm profile, to "
+"enable Banshee to report the songs to your Last.fm profile, in the "
+"<gui>Source Specific</gui> tab in Banshee's preferences, press the "
+"<gui>Enable Song Reporting</gui> checkbox. If you have an active internet "
+"connection, Banshee will now send Last.fm information regarding the songs "
+"you play. To view your play history, visit your profile on the Last.fm "
+"website. Last.fm will automatically update your music metadata if any of "
+"your artist, song title or album information is incorrect."
+msgstr ""
+
+#: C/lastfm.page:72(title)
+msgid "Listen to Last.fm Radio"
+msgstr ""
+
+#: C/lastfm.page:73(p)
+msgid ""
+"Last.fm radio is free for residents of the United States, United Kingdom and "
+"Germany. Residents of other countries will have to pay for a premium account "
+"with Last.fm to listen to radio. Premium members, in all countries, also "
+"receive premium radio features: listening to playlists and stations of music "
+"you've loved or tagged."
+msgstr ""
+
+#: C/lastfm.page:80(p)
+msgid ""
+"In Banshee's context menu onthe left hand side, you will now have a Last.fm "
+"section, including your Lat.fm radio stations. You will need an active "
+"internet connection to listen to Last.fm radio. Choose the radio station you "
+"wish to listen to and Banshee will communicate with Last.fm to populate "
+"songs for that radio station. Press the <gui>Play</gui> button in Banshee or "
+"<key>Spacebar</key> to start streaming a Last.fm radio station. You can also "
+"press the <gui>Next</gui> button in Banshee, <key>N</key> or choose "
+"<guiseq><gui>Playback</gui><gui>Next</gui></guiseq> to play the next song in "
+"your radio station queue."
+msgstr ""
+
+#: C/keyboardshortcuts.page:7(desc) C/advanced.page:27(title)
+#: C/advanced.page:29(title)
+msgid "Keyboard Shortcuts"
+msgstr ""
+
+#: C/keyboardshortcuts.page:24(title)
+msgid "Control Banshee using Keyboard Shortcuts"
+msgstr ""
+
+#: C/keyboardshortcuts.page:28(title)
+msgid "Playback Control"
+msgstr ""
+
+#: C/keyboardshortcuts.page:32(gui) C/keyboardshortcuts.page:53(gui)
+#: C/keyboardshortcuts.page:73(gui) C/keyboardshortcuts.page:90(gui)
+#: C/keyboardshortcuts.page:107(gui)
+msgid "Key"
+msgstr ""
+
+#: C/keyboardshortcuts.page:32(gui) C/keyboardshortcuts.page:53(gui)
+#: C/keyboardshortcuts.page:73(gui) C/keyboardshortcuts.page:90(gui)
+#: C/keyboardshortcuts.page:107(gui)
+msgid "Action"
+msgstr ""
+
+#: C/keyboardshortcuts.page:35(p)
+msgid "Space Bar"
+msgstr ""
+
+#: C/keyboardshortcuts.page:35(p)
+msgid "Play or Pause the current song"
+msgstr ""
+
+#: C/keyboardshortcuts.page:38(p) C/keyboardshortcuts.page:76(key)
+msgid "N"
+msgstr ""
+
+#: C/keyboardshortcuts.page:38(p)
+msgid "Play the next song"
+msgstr ""
+
+#: C/keyboardshortcuts.page:41(p)
+msgid "B"
+msgstr ""
+
+#: C/keyboardshortcuts.page:41(p)
+msgid "Play the previous song"
+msgstr ""
+
+#: C/keyboardshortcuts.page:49(title) C/keyboardshortcuts.page:69(title)
+msgid "Library Interaction"
+msgstr ""
+
+#: C/keyboardshortcuts.page:56(key) C/keyboardshortcuts.page:76(key)
+#: C/keyboardshortcuts.page:114(key) C/keyboardshortcuts.page:118(key)
+#: C/keyboardshortcuts.page:132(key) C/keyboardshortcuts.page:137(key)
+msgid "Control"
+msgstr ""
+
+#: C/keyboardshortcuts.page:56(key) C/keyboardshortcuts.page:110(key)
+msgid "F"
+msgstr ""
+
+#: C/keyboardshortcuts.page:56(p)
+msgid "Move the focus to the search box"
+msgstr ""
+
+#: C/keyboardshortcuts.page:60(p)
+msgid "<key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq>"
+msgstr ""
+
+#: C/keyboardshortcuts.page:61(p)
+msgid "Open import media dialog"
+msgstr ""
+
+#: C/keyboardshortcuts.page:76(p)
+msgid "Create New Playlist"
+msgstr ""
+
+#: C/keyboardshortcuts.page:86(title) C/add-podcast.page:26(title)
+msgid "Podcasts"
+msgstr ""
+
+#: C/keyboardshortcuts.page:93(key)
+msgid "Y"
+msgstr ""
+
+#: C/keyboardshortcuts.page:93(p)
+msgid "Mark the selected episodes as old"
+msgstr ""
+
+#: C/keyboardshortcuts.page:103(title)
+msgid "Interface"
+msgstr ""
+
+#: C/keyboardshortcuts.page:110(p)
+msgid "Toggle full-screen mode"
+msgstr ""
+
+#: C/keyboardshortcuts.page:114(key) C/keyboardshortcuts.page:118(key)
+msgid "A"
+msgstr ""
+
+#: C/keyboardshortcuts.page:114(p)
+msgid "Select all songs in playlist view"
+msgstr ""
+
+#: C/keyboardshortcuts.page:118(key)
+msgid "Shift"
+msgstr ""
+
+#: C/keyboardshortcuts.page:119(p)
+msgid "Unselect all songs in playlist view"
+msgstr ""
+
+#: C/keyboardshortcuts.page:123(key)
+msgid "W"
+msgstr ""
+
+#: C/keyboardshortcuts.page:123(p)
+msgid "Hide Banshee Window (Requires Notification Area Plug-in Enabled"
+msgstr ""
+
+#: C/keyboardshortcuts.page:127(key)
+msgid "Left Mouse Button"
+msgstr ""
+
+#: C/keyboardshortcuts.page:128(p)
+msgid "Play Previous Song (Requires Notification Area Plug-in Enabled"
+msgstr ""
+
+#: C/keyboardshortcuts.page:132(key)
+msgid "Right Mouse Button"
+msgstr ""
+
+#: C/keyboardshortcuts.page:133(p)
+msgid "Play Next Song (Requires Notification Area Plug-in Enabled"
+msgstr ""
+
+#: C/keyboardshortcuts.page:137(key)
+msgid "Middle Mouse Button"
+msgstr ""
+
+#: C/keyboardshortcuts.page:138(p)
+msgid "Toggle Play / Pause (Requires Notification Area Plug-in Enabled"
+msgstr ""
+
+#: C/itunes-import.page:8(desc)
+msgid ""
+"Import music and categorizations from the <app>iTunes</app> media player."
+msgstr ""
+
+#: C/itunes-import.page:12(title)
+msgid "Import your <app>iTunes</app> library"
+msgstr ""
+
+#: C/introduction.page:8(desc)
+msgid "Introduction to the <app>Banshee Media Player</app>."
+msgstr ""
+
+#: C/introduction.page:24(title)
+msgid "Introduction"
+msgstr ""
+
+#: C/introduction.page:26(p)
+msgid ""
+"<app>Banshee</app> is a media player that allows you to play your music, "
+"videos, and other media media as well sync it with portable devices to take "
+"your media on the go."
+msgstr ""
+
+#: C/introduction.page:31(p)
+msgid ""
+"<app>Banshee</app> includes features to import your media, manage its "
+"metadata, and play your music and videos."
+msgstr ""
+
+#: C/introduction.page:35(p)
+msgid ""
+"Banshee also helps you sync your music and videos to popular portable "
+"devices, such as digital audio players and smartphones. Banshee supports "
+"popular devices including most iPods, Sandisk and Creative MP3 players, and "
+"Android powered phones."
+msgstr ""
+
+#: C/index.page:24(title)
+msgid "Add, Remove & Play"
+msgstr "Afegir, suprimir i reproduir"
+
+#: C/index.page:28(title)
+msgid "Manage & Sort"
+msgstr "Gestió i ordenació"
+
+#: C/index.page:32(title)
+msgid "Sync your media with a portable music player"
+msgstr ""
+
+#: C/index.page:36(title)
+msgid "Add additional functionality to Banshee"
+msgstr ""
+
+#: C/index.page:40(title)
+msgid "Advanced options and help"
+msgstr ""
+
+#: C/index.page:44(title)
+msgid "Common Problems"
+msgstr ""
+
+#: C/import.page:8(desc)
+msgid "Add music and videos from your computer to your Banshee library."
+msgstr ""
+
+#: C/import.page:15(name)
+msgid "Shaun McCance"
+msgstr ""
+
+#: C/import.page:16(email)
+msgid "shaunm at gnome.org"
+msgstr ""
+
+#: C/import.page:21(title)
+msgid "Import music & videos"
+msgstr "Importació de música i vídeos"
+
+#: C/import.page:23(p)
+msgid ""
+"You can import music and videos stored on your computer into Banshee. "
+"Imported files appear in your sources and can be edited and managed like any "
+"other media in Banshee."
+msgstr ""
+
+#: C/import.page:27(p)
+msgid ""
+"To import music or video files on your computer, choose <guiseq><gui>Media</"
+"gui><gui>Import Media</gui></guiseq>. A dialog will appear with a number of "
+"choices."
+msgstr ""
+
+#: C/import.page:31(p)
+msgid ""
+"Plugins may add additional import choices. See <link xref=\"#plugins\"/> "
+"below."
+msgstr ""
+
+#: C/import.page:37(gui)
+msgid "Local Folders"
+msgstr "Carpetas locales"
+
+#: C/import.page:38(p)
+msgid ""
+"Choose this option to import all music and video files within a specified "
+"folder, including all subfolders. You will be prompted with a dialog to "
+"choose a folder to import from."
+msgstr ""
+
+#: C/import.page:43(gui)
+msgid "Local Files"
+msgstr "Fitxers locals"
+
+#: C/import.page:44(p)
+msgid ""
+"Choose this option to import only the specific file or files you select. You "
+"will be prompted with a dialog to choose the file or files to import."
+msgstr ""
+
+#: C/import.page:49(gui)
+msgid "Home Folder"
+msgstr ""
+
+#: C/import.page:50(p)
+msgid ""
+"Choose this option to import all music and video files in your entire home "
+"folder, including files in any subfolders."
+msgstr ""
+
+#: C/import.page:54(gui)
+msgid "Videos From Photos Folder"
+msgstr "Vídeos des de la carpeta de fotografies"
+
+#: C/import.page:55(p)
+msgid ""
+"Many digital cameras can take short vidoes, and photo-management "
+"applications often download these videos directly into your Photos folder. "
+"Choose this option to import any videos that have been stored in your Photos "
+"folder."
+msgstr ""
+
+#: C/import.page:63(p)
+msgid ""
+"You can safely import from a folder you have already imported from without "
+"worrying about duplicate entries in your library."
+msgstr ""
+
+#: C/import.page:68(title)
+msgid "Import from a Playlist"
+msgstr "Importa des de una llista de reproducció"
+
+#: C/import.page:69(p)
+msgid ""
+"You can also import music from playlists. Most playlist files end in "
+"<em>m3u</em>. To import from a playlist, from the Banshee menu choose "
+"<guiseq><gui>Media</gui><gui>Import Playlist</gui></guiseq> and locate the "
+"playlist file in your folder, select it and press <gui>Import</gui>."
+msgstr ""
+
+#: C/import.page:78(title)
+msgid "Additional Import Sources"
+msgstr "Fonts d'importació addicionals"
+
+#: C/import.page:79(p)
+msgid ""
+"Plugins may add additional import choices. The following additional sources "
+"will be available if the appropriate plugins are enabled:"
+msgstr ""
+
+#: C/extensions.page:8(desc)
+msgid "Add additional functionality to Banshee."
+msgstr ""
+
+#: C/extensions.page:23(title)
+msgid "Banshee Extensions"
+msgstr ""
+
+#: C/extensions.page:27(title)
+msgid "Official Banshee Extensions"
+msgstr ""
+
+#: C/extensions.page:29(title)
+msgid "Manage extensions for Banshee"
+msgstr ""
+
+#: C/extensions.page:34(title)
+msgid "Community Banshee Extensions"
+msgstr ""
+
+#: C/extensions.page:36(title)
+msgid "Add community built extensions for Banshee"
+msgstr ""
+
+#: C/emusic.page:8(desc)
+msgid "Import music purchased from eMusic."
+msgstr ""
+
+#: C/emusic.page:12(title)
+msgid "Import your eMusic tracks"
+msgstr ""
+
+#: C/amazon.page:9(desc)
+msgid "Sync and purchase music from the Amazon MP3 Store."
+msgstr ""
+
+#: C/amazon.page:24(title)
+msgid "Amazon MP3 Store"
+msgstr ""
+
+#: C/amazon.page:26(p)
+msgid ""
+"Banshee supports downloading and importing music from the Amazon MP3 store. "
+"You can manually import Amazon music files, purchase music in your web "
+"browser or buy music inside of Banshee. Amazon only offers music for sale as "
+"an MP3 in certain countries and depending on your location, you may not be "
+"able to buy Amazon MP3s."
+msgstr ""
+
+#: C/amazon.page:34(p)
+msgid ""
+"Banshee uses an Amazon affiliate code for all music purchases. All money "
+"made via this affiliate code is donated to the GNOME Foundation."
+msgstr ""
+
+#: C/amazon.page:40(title)
+msgid "Purchase Amazon MP3s in your web browser"
+msgstr ""
+
+#: C/amazon.page:42(p)
+msgid ""
+"Music purchased from Amazon's MP3 store can be automatically downloaded and "
+"imported into Banshee. Banshee associates itself with the .amz file Amazon "
+"provides for MP3 purchases. When you buy music on Amazon, your web browser "
+"will download the .amz file and Banshee will automatically open it and begin "
+"the download and import the music."
+msgstr ""
+
+#: C/amazon.page:51(title)
+msgid "Buy Amazon MP3s in Banshee"
+msgstr ""
+
+#: C/amazon.page:53(p)
+msgid ""
+"You can also search for songs on Amazon within Banshee. Choose the Amazon "
+"MP3 Store from the Banshee menu on the left. This will load the Amazon MP3 "
+"Store just as if you were in a web browser. You can search Amazon for the "
+"music you wish to buy and after logging in to Amazon, buy music with one "
+"click. Banshee will automatically download and import the your purchase into "
+"the library."
+msgstr ""
+
+#: C/amazon.page:63(title)
+msgid "Import Amazon MP3s manually"
+msgstr ""
+
+#: C/amazon.page:65(p)
+msgid ""
+"When music is purchased from Amazon in a web browser, a file with the "
+"extension .amz is downloaded and saved to your hard drive. To import music "
+"purchased manually from Amazon, in Banshee choose <guiseq><gui>Media</"
+"gui><gui>Import Media</gui></guiseq> from the menu and select the *.amz file "
+"to be imported. Banshee will then open this file and connect to the Amazon "
+"MP3 store to begin the download."
+msgstr ""
+
+#: C/amazon.page:74(p)
+msgid ""
+"Amazon .amz files are only active for a short time. If you do not download "
+"your music quickly, the file will expire and you cannot download your music "
+"from Amazon. Amazon does not publish how long files are active. It is "
+"recommended you download and import any purchases from Amazon within an hour "
+"of purchase."
+msgstr ""
+
+#: C/advanced.page:8(desc)
+msgid "Get help for advanced actions."
+msgstr ""
+
+#: C/advanced.page:23(title)
+msgid "Advanced Options and Help"
+msgstr ""
+
+#: C/add-radio.page:11(desc)
+msgid "Add, remove and play internet radio stations in Banshee."
+msgstr ""
+
+#: C/add-radio.page:26(title)
+msgid "Internet Radio"
+msgstr ""
+
+#: C/add-radio.page:29(title)
+msgid "What is Internet Radio?"
+msgstr ""
+
+#: C/add-radio.page:31(p)
+msgid ""
+"Internet radio stations are similar to regular radio stations, allowing an "
+"individual or organization to stream music live over the internet. Internet "
+"radio stations can be a simultaneous stream of a regular radio station, an "
+"amateur broadasting their own station, or commercial internet radio stations "
+"that include live DJs and even commercials."
+msgstr ""
+
+#: C/add-radio.page:41(title)
+msgid "Add Radio Station"
+msgstr ""
+
+#: C/add-radio.page:43(p)
+msgid ""
+"To add an internet radio station to Banshee, press <gui>Add Station</gui> in "
+"the upper right hand corner of Banshee or, from the menu, choose "
+"<guiseq><gui>Menu</gui><gui>Add Station</gui></guiseq>."
+msgstr ""
+
+#: C/add-radio.page:48(p)
+msgid ""
+"From the internet radio station's webpage, copy the link to their stream URL "
+"in your web browser. In most browsers, you can right click on the link and "
+"press <gui>Copy Link</gui>."
+msgstr ""
+
+#: C/add-radio.page:54(p)
+msgid ""
+"Banshee will prompt you to enter the <gui>Station Genre</gui>. Choose the "
+"kind of music the internet radio station plays from the available drop down "
+"selections. You will then need to enter the <gui>Station Name</gui>. Enter a "
+"name for the radio station. Then press tab or use your mouse to select the "
+"<gui>Stream URL:</gui> dialog to paste the URL of the radio station. Using "
+"your mouse right click and choose <gui>Paste</gui> or press "
+"<keyseq><key>Control</key>+<key>V</key></keyseq>."
+msgstr ""
+
+#: C/add-radio.page:62(p)
+msgid ""
+"You can optionally also fill out the fields for <gui>Station Creator</gui>, "
+"<gui>Description</gui>, and <gui>Rating</gui>."
+msgstr ""
+
+#: C/add-radio.page:66(p)
+msgid ""
+"Then press <gui>Save</gui> to save the internet radio station in Banshee."
+msgstr ""
+
+#: C/add-podcast.page:11(desc)
+msgid "Add, remove and play podcasts in Banshee."
+msgstr ""
+
+#: C/add-podcast.page:29(title)
+msgid "What is a Podcast?"
+msgstr ""
+
+#: C/add-podcast.page:31(p)
+msgid ""
+"Podcasts are recorded programs, similar to radio programs, that are "
+"available on the internet and allow you to subscribe. When you subscribe to "
+"a podcast in Banshee, each time a new program is released, Banshee will "
+"automatically download the podcast and allow you to listen to it."
+msgstr ""
+
+#: C/add-podcast.page:36(p)
+msgid ""
+"There are podcasts on almost any subject including music, movies, Linux, and "
+"more. Search the internet using your favorite search engine with a search "
+"term such as \"movie podcast\" and you will be presented with many options "
+"to choose from."
+msgstr ""
+
+#: C/add-podcast.page:44(title)
+msgid "Add a Podcast"
+msgstr ""
+
+#: C/add-podcast.page:46(p)
+msgid ""
+"To add a Podcast to Banshee you will first need to visit the podcast's home "
+"page on the internet in your browser. Almost all podcasts will have a button "
+"or link displayed to subscribe to the podcast. Copy the link to the "
+"podcast's subscription. In most web browsers, you can right click on the "
+"link and choose <gui>Copy link</gui>."
+msgstr ""
+
+#: C/add-podcast.page:53(p)
+msgid ""
+"In Banshee, press and choose <gui>Subscribe to Podcasts</gui> in the upper "
+"right hand corner, from the menu choose <guiseq><gui>Media</gui><gui> "
+"Subscribe to Podcast</gui></guiseq> or use the keyboard shortcut "
+"<keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>."
+msgstr ""
+
+#: C/add-podcast.page:59(p)
+msgid ""
+"Banshee will then allow you to choose how you want to download new podcasts "
+"from a drop down menu. Your choices include:"
+msgstr ""
+
+#: C/add-podcast.page:63(p)
+msgid ""
+"Download the Most Recent Episode (This will automatically download the last "
+"episode that was released)."
+msgstr ""
+
+#: C/add-podcast.page:65(p)
+msgid "Download All Episodes (This will download all episodes)."
+msgstr ""
+
+#: C/add-podcast.page:66(p)
+msgid ""
+"Let Me Decide Which Episodes to Download (This will allow you to choose "
+"which episodes you would like to download)."
+msgstr ""
+
+#: C/add-podcast.page:70(p)
+msgid "After you have added a Podcast feed, Banshee will display:"
+msgstr ""
+
+#: C/add-podcast.page:73(p)
+msgid "<gui>Name</gui>: (Name of the specific episode)"
+msgstr ""
+
+#: C/add-podcast.page:74(p)
+msgid "<gui>Podcast</gui>: (Name of the Podcast)"
+msgstr ""
+
+#: C/add-podcast.page:75(p)
+msgid "<gui>Published</gui> (Date the episode was published or released)"
+msgstr ""
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/index.page:0(None)
+msgid "translator-credits"
+msgstr "Jordi Mas i Hernandez, 2010"
+
diff --git a/help/es/emusic.page b/help/ca/emusic.page
similarity index 100%
copy from help/es/emusic.page
copy to help/ca/emusic.page
diff --git a/help/es/extensions.page b/help/ca/extensions.page
similarity index 100%
copy from help/es/extensions.page
copy to help/ca/extensions.page
diff --git a/help/ca/import.page b/help/ca/import.page
new file mode 100644
index 0000000..4459eac
--- /dev/null
+++ b/help/ca/import.page
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="guide" style="task" id="import">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="remove-media"/>
+    <desc>Add music and videos from your computer to your Banshee library.</desc>
+    <revision pkgversion="1.6" version="1.6" date="2010-07-15" status="review"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+    <credit type="editor">
+      <name>Shaun McCance</name>
+      <email>shaunm at gnome.org</email>
+    </credit>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Importació de música i vídeos</title>
+
+  <p>You can import music and videos stored on your computer into Banshee. Imported
+  files appear in your sources and can be edited and managed like any other media in
+  Banshee.</p>
+
+  <p>To import music or video files on your computer, choose <guiseq><gui>Media</gui>
+  <gui>Import Media</gui></guiseq>. A dialog will appear with a number of choices.</p>
+
+  <note>
+    <p>Plugins may add additional import choices. See <link xref="#plugins"/>
+    below.</p>
+  </note>
+
+  <terms>
+    <item>
+      <title><gui>Carpetas locales</gui></title>
+      <p>Choose this option to import all music and video files within
+      a specified folder, including all subfolders. You will be prompted
+      with a dialog to choose a folder to import from.</p>
+    </item>
+    <item>
+      <title><gui>Fitxers locals</gui></title>
+      <p>Choose this option to import only the specific file or files
+      you select. You will be prompted with a dialog to choose the
+      file or files to import.</p>
+    </item>
+    <item>
+      <title><gui>Home Folder</gui></title>
+      <p>Choose this option to import all music and video files in your
+      entire home folder, including files in any subfolders.</p>
+    </item>
+    <item>
+      <title><gui>Vídeos des de la carpeta de fotografies</gui></title>
+      <p>Many digital cameras can take short vidoes, and photo-management
+      applications often download these videos directly into your Photos
+      folder. Choose this option to import any videos that have been
+      stored in your Photos folder.</p>
+    </item>
+  </terms>
+
+  <note>
+    <p>You can safely import from a folder you have already imported
+    from without worrying about duplicate entries in your library.</p>
+  </note>
+  
+  <section id="import-playlist">
+    <title>Importa des de una llista de reproducció</title>
+    <p>You can also import music from playlists.  Most playlist files end
+    in <em>m3u</em>. To import from a playlist, from the Banshee menu 
+    choose <guiseq><gui>Media</gui><gui>Import Playlist</gui></guiseq> and 
+    locate the playlist file in your folder, select it and press 
+    <gui>Import</gui>.
+    </p>
+  </section>
+  
+  <section id="plugins">
+    <title>Fonts d'importació addicionals</title>
+    <p>Plugins may add additional import choices. The following additional
+    sources will be available if the appropriate plugins are enabled:</p>
+  </section>
+  	
+</page>
diff --git a/help/ca/index.page b/help/ca/index.page
new file mode 100644
index 0000000..4d6995e
--- /dev/null
+++ b/help/ca/index.page
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="guide" id="index">
+
+  <info>
+    <revision pkgversion="1.6" version="0.1" date="2010-01-22" status="incomplete"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--    
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->    
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Reproductor multimèdia Banshee</title>
+
+  <section id="media" style="2column">
+    <title>Afegir, suprimir i reproduir</title>
+  </section>
+
+  <section id="manage" style="2column">
+    <title>Gestió i ordenació</title>
+  </section>
+  
+  <section id="sync" style="2column">
+    <title>Sync your media with a portable music player</title>
+  </section>
+
+  <section id="extensions" style="2column">
+    <title>Add additional functionality to Banshee</title>
+  </section>
+  
+  <section id="advanced" style="2column">
+	<title>Advanced options and help</title>
+  </section>
+
+  <section id="problems">
+    <title>Common Problems</title>
+  </section>
+
+</page>
diff --git a/help/ca/introduction.page b/help/ca/introduction.page
new file mode 100644
index 0000000..3bc3270
--- /dev/null
+++ b/help/ca/introduction.page
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" id="introduction">
+
+  <info>
+    <link type="guide" xref="index"/>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="draft"/>
+    <desc>
+      Introduction to the <app>Banshee Media Player</app>.
+    </desc>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Introduction</title>
+
+  <p>
+    <app>Banshee</app> is a media player that allows you to play your music,
+    videos, and other media media as well sync it with portable devices to take your media
+    on the go.
+  </p>
+  <p>
+    <app>Banshee</app> includes features to import your media, manage its
+    metadata, and play your music and videos.
+  </p>
+  <p>
+    Banshee also helps you sync your music and videos to popular portable
+    devices, such as digital audio players and smartphones.  Banshee supports
+    popular devices including most iPods, Sandisk and Creative MP3 players, and
+    Android powered phones.
+  </p>
+
+  <figure>
+    <title>Finestra del </title>
+    <desc><app>Reproductor multimèdia Banshee</app></desc>
+    <media type="image" src="figures/banshee.png" mime="image/png" style="right">
+      <p>Biblioteca de l'interfície del <app>Banshee</app></p>
+    </media>
+  </figure>
+
+</page>
diff --git a/help/es/itunes-import.page b/help/ca/itunes-import.page
similarity index 100%
copy from help/es/itunes-import.page
copy to help/ca/itunes-import.page
diff --git a/help/es/keyboardshortcuts.page b/help/ca/keyboardshortcuts.page
similarity index 100%
copy from help/es/keyboardshortcuts.page
copy to help/ca/keyboardshortcuts.page
diff --git a/help/es/lastfm.page b/help/ca/lastfm.page
similarity index 100%
copy from help/es/lastfm.page
copy to help/ca/lastfm.page
diff --git a/help/es/legal.xml b/help/ca/legal.xml
similarity index 100%
copy from help/es/legal.xml
copy to help/ca/legal.xml
diff --git a/help/es/manage-coverart.page b/help/ca/manage-coverart.page
similarity index 100%
copy from help/es/manage-coverart.page
copy to help/ca/manage-coverart.page
diff --git a/help/es/manage-playlists.page b/help/ca/manage-playlists.page
similarity index 100%
copy from help/es/manage-playlists.page
copy to help/ca/manage-playlists.page
diff --git a/help/es/manage-tags.page b/help/ca/manage-tags.page
similarity index 100%
copy from help/es/manage-tags.page
copy to help/ca/manage-tags.page
diff --git a/help/es/play-queue.page b/help/ca/play-queue.page
similarity index 100%
copy from help/es/play-queue.page
copy to help/ca/play-queue.page
diff --git a/help/ca/play.page b/help/ca/play.page
new file mode 100644
index 0000000..4a4d819
--- /dev/null
+++ b/help/ca/play.page
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="play">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="queue"/>
+    <desc>Reproduïu els vostres fitxers amb vídeo i música.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+  
+  <title>Reproducció d'elements multimèdia</title>
+
+  <section id="playmusic">
+  <title>Reproducció de la música</title>    
+  
+  <p>Per a reproduir música al Banshee escolliu la font de la música. La biblioteca de música mostrarà tots els artistes de la biblioteca, cobertes per cada àlbum i la llista de les cançons que hi ha a la biblioteca.</p>
+  
+  <p>Escolliu l'àlbum o cançó que desitgeu reproduir de la llista d'artistes, àlbums o utilitzeu la barra de cerca de la part superior dreta del Banshee.</p>
+  
+  <p>Per començar a reproduir una cançó, utilitzeu el ratolí fent doble clic al nom de la cançó, premeu la tecla <key>barra espaiadora</key>, o escolliu <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu.</p>
+  
+  <p>Podeu començar a reproduir un àlbum escollint-lo al navegador d'àlbums i fent clic amb el ratolí al nom de la cançó, prement la tecla <key>barra espaiadora</key>, o seleccionant <guiseq><gui>Playback</gui><gui>Play</gui> guiseq> des del menú del Banshee.</guiseq></p>
+  
+  <p>To play all songs by one artist, choose the artist in the artist browser
+  and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
+  <gui>Play</gui></guiseq> from the Banshee menu.
+  </p>
+  
+  <p>Banshee also displays your Favorite albums (those you play the most),
+  Recent Favorites, Recently Added and Unheard music.  Choose the one
+  you wish to listen to and you can play songs from each.
+  </p>
+  
+  </section>
+
+  <section id="playvideo">
+  <title>Reproducció d'un vídeo</title>    
+  
+  <p>Your imported videos are listed alphabetically.  To play a video, 
+  choose the video you wish to play from the list and 
+  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
+  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  
+  <p>Banshee also shows your Favorite videos (those you watch the most)
+  and Unwatched videos.  Choose one and you can play a video from the list.</p>	
+  
+  </section>
+  
+  <section id="playpodcast">
+  <title>Reproducció d'un Podcast</title>    
+  
+  <p>Podcasts shows you all Podcasts you're subscribed too, all Podcast
+  shows available, and the Podcast browser lists all Podcasts in order of 
+  newest first.</p>
+  
+  <p>To play a Podcast, 
+  choose the Podcast you wish to play from the list and 
+  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
+  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  
+  </section>
+  
+  <section id="playradio">
+  <title>Play an internet radio station</title>    
+  
+  <p>The Radio source shows you all internet radio stations you have added 
+  to Banshee alphabetically.
+  </p>
+  
+  <p>To play an internet radio station, 
+  choose the radio station you wish to play from the list and 
+  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
+  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  
+  </section>    
+	
+</page>
diff --git a/help/ca/rb-import.page b/help/ca/rb-import.page
new file mode 100644
index 0000000..096907b
--- /dev/null
+++ b/help/ca/rb-import.page
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="rb-import">
+
+  <info>
+    <link type="guide" xref="import#plugins"/>
+    <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
+    <desc>Importeu la música i les categoritzacions del reproductor de música <app>Rhythmbox</app>.</desc>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Importació la biblioteca del <app>Rhythmbox</app></title>
+
+</page>
diff --git a/help/ca/search.page b/help/ca/search.page
new file mode 100644
index 0000000..cf2cfc6
--- /dev/null
+++ b/help/ca/search.page
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="search">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="sort"/>
+    <desc>Cerqueu els elements multimèdia i realitzeu consultes bàsiques.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Cercant a la biblioteca</title>    
+  
+  <p>El Banshee disposa d'un llenguatge de cerca potent. Podeu cercar la biblioteca de forma ràpida i senzilla utilitzant termes de cerca bàsics o bé realitzant cerques detallades amb la terminologia de cerca avançada del Banshee.</p>
+  
+  <p>Per a realitzar cerques dels vostres elements multimèdia al Banshee, premeu la tecla <key>S</key> o feu clic en la capsa <gui>Cerca</gui> a la part superior dreta de la vista biblioteca al Banshee.</p>
+  
+  <p>Una consulta de cerca consisteix d'algunes termes bàsics, per exemple, <em>lluís llach</em>. En introduir <em>lluís llach</em> en la capsa de cerca, el Banshee cercarà a tots els camps de metadades, incloent-hi el títol de la cançó, el títol de l'àlbum, l'artista, l'any, etc. Qualsevol cançó que inclogui en les seves metadades  <em>lluís</em> i <em>llach</em> serà retornada. La cerca de termes no diferència entre majúscules i minúscules. Els termes <em>lluís</em>, <em>Lluís</em>, i <em>LLUÍS</em> tenen el mateix significat al fer una cerca.</p>
+
+<section id="operators">
+  <title>Operadors bàsics</title>
+  <p>Els operadors poden col·locar-se entre dues paraules de cerca o col·locar-se abans d'una paraula de cerca. L'operació per defecte és <gui>i</gui> i s'utilitza quan cap altre operador es emprat entre dos termes de cerca. Atès que és el predeterminat, no existeix l'operador I explícitament.</p>
+  
+  <p>Altres operadors bàsics inclouen l'<gui>OR</gui> i el <gui>NOT</gui>. Junts, aquests tres operadors permeten consultes molt potents per ajudar-vos a cercar als elements multimèdia.</p>
+  
+</section>
+
+<section id="logical">
+  <title>Operadors lògics i exemples</title>
+  <p>A continuació es mostra una llista d'operadors lògics i exemples de resultats de cerques realitzes amb operadors lògics.</p>
+  
+  <table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Operador</gui></p></td>  <td><p><gui>Descripció</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><em>per defecte</em>, <em>espai en blanc</em></p></td> <td><p>Cerca dos termes amb un espai entre les dos paraules o termes.</p></td>
+  </tr>
+  <tr>
+    <td><p>O, o, <key>|</key>, <key>,</key></p></td> <td><p>Els resultats de la cerca seran les cançons que continguin els dos termes en qualsevol camp.</p></td>
+  </tr>
+  <tr>
+    <td><p>NO, no,<key>-</key></p></td> <td><p>
+    Do not display search results with any search term that follows the 
+    operator of NOT, not,<key>-</key>.</p></td>
+  </tr>  
+         
+</table>
+
+  <p>Els exemples d'operacions lògiques inclouen:</p>
+  
+  <table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Consulta</gui></p></td>  <td><p><gui>Descripció</gui></p></td>
+  </tr>
+  <tr>
+    <td><p>lluís llach</p></td> <td><p>Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em>i <em>llach</em> (ambdós) en qualsevol dels camps.</p></td>
+  </tr>
+  <tr>
+    <td><p>lluís, llach</p></td> <td><p>Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em> o <em>llach</em> en qualsevol dels camps.</p></td>
+  </tr>
+  <tr>
+    <td><p>lluís o llach</p></td> <td><p>Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em> o <em>llach</em> en qualsevol dels camps.</p></td>
+  </tr> 
+  <tr>
+    <td><p>lluís | llach</p></td> <td><p>Retorna com a resultat de la cerca qualsevol cançó que contingui <em>lluís</em> o <em>llach</em> en qualsevol dels camps.</p></td>
+  </tr>       
+  <tr>
+    <td><p>-"lluís llach"</p></td> <td><p>Mostra totes les cançons que no continguin <em>lluís llach</em>.</p></td>
+  </tr> 
+  
+  </table> 
+  
+  <p>Per a més informació sobre com realitzar consultes de cerca complexes, vegeu la pàgina <link xref="adv-search"/>.</p>
+  
+</section>
+	
+</page>
diff --git a/help/ca/sort.page b/help/ca/sort.page
new file mode 100644
index 0000000..3e31924
--- /dev/null
+++ b/help/ca/sort.page
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="sort">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="search"/>
+    <desc>Ordeneu els elements multimèdia i afegiu columnes addicionals.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Ordenació dels elements multimèdia</title>
+
+  <section id="addcolumn">
+
+  <title>Afegir columnes</title>    
+  
+  <p>A mida que la biblioteca creix, potser voleu ordenar la vista biblioteca per certes cançons, artistes o àlbums.</p>
+  
+  <p>Podeu afegir columnes addicionals a la vista biblioteca del <app>Banshee</app> per disposar de més informació sobre les cançons, a més de poder-les ordenar. Per defecte, per a cançons, el Banshee mostra les columnes <gui>Nom</gui>, <gui>Artista</gui>, <gui>Àlbum</gui> i <gui>Temps</gui>. Per a afegir columnes addicionals, feu un clic amb el botó dret del ratolí a qualsevol de les columnes i el Banshee mostrarà totes les columnes disponibles. Feu clic a la casella de selecció al costat del nom de la columna que desitgeu afegir a la vista biblioteca.</p>
+  
+  </section>
+  
+  <section id="sorting">
+    <title>Ordenació de columnes</title>
+    <p>Podeu ordenar la biblioteca utilitzant el ratolí fent clic a qualsevol de les columnes mostrades en la vista biblioteca. Si voleu ordenar la biblioteca per artista, feu clic a la capçalera de la columna <gui>Artista</gui> i el Banshee ordenarà automàticament la columna alfabèticament. Fent clic a la columna <gui>Artista</gui> de nou ordenarà la columna en ordre alfabètic invers.</p>
+  </section>
+	
+</page>
diff --git a/help/ca/sync.page b/help/ca/sync.page
new file mode 100644
index 0000000..bcefaba
--- /dev/null
+++ b/help/ca/sync.page
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="sync">
+
+  <info>
+    <link type="guide" xref="index#sync"/>
+    <link type="seealso" xref="playlists"/>
+    <desc>Sincronitza els elements multimèdia </desc>
+    <revision pkgversion="1.8" version="0.1" date="2010-08-29" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Sincronització</title>    
+  
+  <p>Banshee supports syncing your music to portable media players and 
+  smartphones.  You can add specific music tracks, albums or playlist 
+  or allow Banshee to keep your music player in sync with your entire
+  library.  After your player is connected to your computer you can also
+  play back the songs on your portable player in Banshee.  When syncing
+  music in a lossless format, such as FLAC, Banshee will automatically
+  transcode your music for you to a lossy format such as Ogg Vorbis or MP3,
+  if you have the correct codecs installed.
+  </p>
+  
+  <section id="devices">
+    <title>Compatibilitat amb dispositius</title>
+    <p>El Banshee es compatible amb la majoria de reproductors de música moderns i telèfons intel·ligents amb les excepcions de l'iPhone, l'iPad i l'iPod Touch d'Apple.</p>
+  
+  <p>Quan connecteu un dispositiu, el Banshee el mostrarà al menú esquerre. Al pressionar la icona del dispositiu anireu a la pàgina inicial del dispositiu mostrant les preferències de sincronització.</p>
+  
+  </section>
+  
+    <section id="sync-settings">
+    <title>Sincronització de la música</title>
+    <p>Podeu escollir gestionar els elements multimèdia al dispositiu portable permetent al Banshee sincronitzar-se automàticament o gestionant la música i elements multimèdia manualment.</p>
+    
+    <p>Escolliu el dispositiu des del menú del Banshee i llavors trieu com voleu sincronitzar els elements multimèdia, incloent-hi:</p>
+    <list>
+      <item><p>Música</p></item>
+      <item><p>Audiollibres</p></item>  
+      <item><p>Vídeos</p></item>
+      <item><p>Podcast</p></item>  
+    </list>
+    
+    <p>Des del menú desplegable al costat de cada element multimèdia, escolliu:</p>
+    <list>
+      <item><p>Gestiona manualment</p></item>
+      <item><p>Sincronitza la biblioteca sencera</p></item>  
+    </list>    
+    
+    <note style="warning">
+      <p>If you choose to sync your entire library automatically with your
+      portable media player make sure your portable media player has enough
+      storage space.  If your library is larger than the space on your
+      portable media player, Banshee will sync media until your player is
+      full and then stop.        
+      </p>
+    </note>
+    
+    <p>If you have created playlists or smart playlists in your music library,
+    they will also be displayed as a sync option for Music.  This can be 
+    helpful when creating smart playlists, as smart playlists will automatically
+    update as new content is added based on the playlist rules, and Banshee
+    will sync the new playlist to your device every time you plug it in.
+    </p>
+    
+    <p>Banshee will display the total hard drive space of your portable music
+    player in a graph in the bottom center of Banshee.  The graph will show you
+    how much space is taken by audio files, video, other and free space.  
+    Directly below that Banshee will show you how many total items are stored
+    on your portable music player, how many hours or days of listening that is
+    equal to, and total space used.
+    </p>
+    
+  </section>
+
+  <section id="sync-manually">
+    <title>Sincronització de la biblioteca sencera</title>
+    <p>You can drag and drop media to your portable music player form Banshee.
+    Select the file or files you want to copy to your portable media player
+    and then press and hold your right mouse button and drag the file(s) to
+    your portable media player icon in Banshee.  This will copy the files to 
+    your device.
+    </p>
+    
+    <p>If your music library is encoded in a format that your portable media
+    player does not support, such as OGG or FLAC, and you have the necessary
+    codecs installed, Banshee can automatically transcode these files to MP3
+    when transferring to your portable media player.  Check with your Linux
+    distribution for the necessary codecs as it is outside the scope of this
+    help and varies by distribution.
+    </p>
+    
+    <note style="tip">
+      <p>You may need to eject your device to load the files correctly
+      on your portable music player.  To eject your device in Banshee,
+      using your mouse right click the device in the Banshee menu and
+      press <gui>Disconnect</gui>.
+      </p>
+    </note>
+
+  </section>
+  
+  <section id="pmp-play">
+    <title>Reproducció de la música des del reproductor portable</title>
+    <p>You can play music stored on your portable music player directly in
+    Banshee.  Choose your player in the Banshee menu on the left and your 
+    portable music player's library will be displayed.  You can then play
+    music in Banshee just as you would music in your own library.</p>
+  </section>
+  
+  <section id="pmp-delete">
+    <title>Suprimeix la música des del reproductor portable</title>
+    <p>To remove songs stored on your portable music player, choose your
+    player in Banshee to view its library.  Then choose the tracks you would
+    like to remove and right click the tracks and choose "Delete" or from the 
+    menu choose <guiseq><gui>Edit</gui><gui>Delete</gui></guiseq>.</p>
+    
+     <note style="warning">
+      <p>Deleting files from your portable music will permanently remove
+      the files and you will not be able to recover them.      
+      </p>
+    </note>
+    
+  </section>
+
+	
+</page>
diff --git a/help/ca/ui.page b/help/ca/ui.page
new file mode 100644
index 0000000..016d77f
--- /dev/null
+++ b/help/ca/ui.page
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" id="ui">
+
+  <info>
+    <link type="guide" xref="index"/>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="stub"/>
+    <desc>Una perspectiva general de la interfície d'usuari del <app>Banshee's</app>.</desc>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Introducció a la interfície d'usuari del Banshee</title>
+
+  <figure>
+    <title>Finestra del </title>
+    <desc><app>Reproductor multimèdia Banshee</app></desc>
+    <media type="image" src="figures/banshee.png" mime="image/png" style="right">
+      <p>Biblioteca de l'interfície del <app>Banshee</app></p>
+    </media>
+  </figure>
+  
+<section id="context">
+  <title>Fonts</title>
+    <p>Les fonts de música i vídeo es mostren a l'esquerra del Banshee. Les fonts us donen accés ràpid a la cua de reproducció, música, vídeos, Amazon, Last.fm, Poscasts i d'altres.</p>
+    
+    <note style="tip">
+      <p>Les opcions de menú canvien depenent de la font que heu triat. Per exemple, per a usar el menú per a importar un Podcast, haureu d'escollir la font Podcast. L'opció del menú per a importar un Podcast no està disponible quan es visualitza la biblioteca de vídeo o música.</p>
+    </note> 
+</section>
+
+<section id="browser">
+  <title>Navegador de la biblioteca</title>
+  <p>Quan escolliu una font de música o vídeo des de «Fonts», el Banshee mostrarà el contingut al navegador de la biblioteca. Depenent de la font que escolliu, el Banshee pot reproduir la música, la biblioteca de vídeos, les subscripcions Podcast, o inclús, mostrar la botiga de música d'Amazon perquè pugueu comprar música.</p>
+</section>
+
+<section id="nowplaying">
+  <title>Vista Reproducció ara</title>
+  <p>Helpful when using Banshee in full screen mode, the Now Playing mode
+  hides the library to give you a larger view of the music or video you're 
+  watching.   When listening to music, the Now Playing view will show you 
+  the artist name, album and cover art if available.  If you are watching
+  a video, Banshee will display the video.</p>
+  
+  <p>Per a què la Reproducció ara amagui l'interfície d'usuari del Banshee i utilitzi  el mode a pantalla completa, podeu prémer <key>F</key>, el botó <gui>Pantalla completa</gui>a la part superior dreta del Banshee, o seleccionar <guiseq><gui>Pantalla completa<gui/>seq> per a iniciar el mode pantalla completa.</gui></guiseq></p>
+  
+</section>
+
+<section id="library">
+  <title>Biblioteca</title>
+  <p>La vista biblioteca al Banshee canvia depenent de la font que heu escollit. La biblioteca mostrarà les cobertes, artistes i llistes de cançons. La biblioteca Podcast mostrarà les subscripcions a Podcasts, que estan baixats o sense acabar de baixar o bé Podcasts antics. Vegeu la pàgina d'ajuda per a cada font per a obtenir informació detallada de com gestionar cada font.</p>
+</section>
+
+
+</page>
diff --git a/help/de/search.page b/help/de/search.page
index 9bfd921..bc0f899 100644
--- a/help/de/search.page
+++ b/help/de/search.page
@@ -50,7 +50,9 @@
     <td><p>OR, or, <key>|</key>, <key>,</key></p></td> <td><p>Suchergebnis sind zwei Begriffe mir einem Ergebnis in jedem Feld.</p></td>
   </tr>
   <tr>
-    <td><p>NOT, not,<key>-</key></p></td> <td><p>Keine Suchergebnisse anzeigen, die den Teil des Suchbegriffs enthalten, der dem Operator NOT folgt, <key>-</key>.</p></td>
+    <td><p>NOT, not,<key>-</key></p></td> <td><p>
+    Do not display search results with any search term that follows the 
+    operator of NOT, not,<key>-</key>.</p></td>
   </tr>  
          
 </table>
diff --git a/help/el/add-podcast.page b/help/el/add-podcast.page
new file mode 100644
index 0000000..2c1ebba
--- /dev/null
+++ b/help/el/add-podcast.page
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="add-podcast">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="remove-media"/>
+    <link type="seealso" xref="add-radio"/>
+    <link type="seealso" xref="import"/>
+    <desc>Προσθήκη, αφαίρεση και αναπαραγωγή φορητών εκπομπών στο Banshee.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Φορητές εκπομπές</title> 
+  
+  <section id="podcastdescription">
+     <title>Τι είναι η φορητή εκπομπή (Podcast);</title>
+     
+  <p>Οι φορητές εκπομπές είναι ηχογραφημένα προγράμματα, παρόμοια με τα ραδιοφωνικά, που είναι διαθέσιμα στο διαδίκτυο και σας επιτρέπουν να γίνετε συνδρομητής. Όταν γίνετε συνδρομητής σε μια φορητή εκπομπή στο Banshee, κάθε φορά που παράγεται ένα καινούριο πρόγραμμα, το Banshee θα μεταφορτώσει αυτόματα την εκπομπή για να την ακούσετε.</p>
+  
+  <p>Υπάρχουν φορητές εκπομπές για σχεδόν κάθε θέμα, περιλαμβανομένων μουσικής, ταινιών, Linux και άλλων. Αναζητήστε στο διαδίκτυο με χρήση της αγαπημένης σας μηχανής αναζήτησης με έναν όρο αναζήτησης όπως "movie podcast" και θα εμφανιστούν πολλές επιλογές για να διαλέξετε.</p>
+  
+  </section>
+  
+  <section id="addpodcast">
+    <title>Προσθήκη φορητής εκπομπής (podcast)</title>
+  
+  <p>Για να προσθέσετε μια φορητή εκπομπή στο Banshee θα χρειαστεί πρώτα να επισκεφτείτε την ιστοσελίδα της φορητής εκπομπής στο διαδίκτυο με τον περιηγητή ιστού σας. Σχεδόν όλες οι φορητές εκπομπές θα έχουν ένα κουμπί ή σύνδεσμο για να εγγραφείτε στη φορητή εκπομπή. Αντιγράψτε το δεσμό στη συνδρομή σας της φορητής εκπομπής. Στους περισσότερους περιηγητές ιστού μπορείτε να κάνετε δεξί κλικ στο δεσμό και να επιλέξετε <gui>Αντιγραφή δεσμού</gui>.</p>
+  
+  <p>Στο Banshee, πατήστε και επιλέξτε <gui>Συνδρομή σε φορητές εκπομπές</gui>, στην πάνω δεξιά γωνία από το μενού επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui> Συνδρομή στη φορητή εκπομπή</gui></guiseq> ή χρησιμοποιήστε τη συντόμευση πληκτρολογίου <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>.</p>
+  
+  <p>Το Banshee θα σας επιτρέψει τότε να επιλέξετε πως θέλετε να μεταφορτώνονται οι νέες φορητές εκπομπές από ένα αναπτυσσόμενο μενού. Οι επιλογές σας περιλαμβάνουν:</p>
+  
+  <list>
+  	<item><p>Μεταφόρτωση του πιο πρόσφατου επεισοδίου (Αυτό θα μεταφορτώσει αυτόματα το τελευταίο επεισόδιο που κυκλοφόρησε).</p></item>
+  	<item><p>Μεταφόρτωση όλων των επεισοδίων (Αυτό θα μεταφορτώσει όλα τα επεισόδια).</p></item>
+	<item><p>Αφήστε με να αποφασίσω ποια επεισόδια θα μεταφορτωθούν (Αυτό θα σας επιτρέψει να επιλέξετε ποια επεισόδια θα θέλατε να μεταφορτώσετε).</p></item>
+  </list>
+
+  <p>Αφού προσθέσετε μια ροή φορητής εκπομπής, το Banshee θα εμφανίσει:</p>
+  
+  <list>
+  	<item><p><gui>Όνομα</gui>: (Όνομα του συγκεκριμένου επεισοδίου)</p></item>
+  	<item><p><gui>Φορητή εκπομπή</gui>: (Όνομα της φορητής εκπομπής)</p></item>
+  	<item><p><gui>Κυκλοφόρησε</gui> (Ημερομηνία κυκλοφορίας ή δημοσίευσης του επεισοδίου)</p></item>
+  </list>
+  
+  </section>	
+  	  	  
+</page>
diff --git a/help/el/add-radio.page b/help/el/add-radio.page
new file mode 100644
index 0000000..502cb44
--- /dev/null
+++ b/help/el/add-radio.page
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="add-radio">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="remove-media"/>
+    <link type="seealso" xref="add-podcasts"/>
+    <link type="seealso" xref="import"/>
+    <desc>Προσθήκη, αφαίρεση και αναπαραγωγή σταθμών διαδικτυακού ραδιοφώνου στο Banshee.</desc>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-20" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Διαδικτυακό ραδιόφωνο</title> 
+  
+  <section id="radiodescription">
+     <title>Τι είναι το διαδικτυακό ραδιόφωνο;</title>
+     
+  <p>Οι διαδικτυακοί ραδιοφωνικοί σταθμοί είναι παρόμοιοι με τους κανονικούς, επιτρέποντας σε ένα άτομο ή οργανισμό να μεταδώσει ζωντανά μουσική μέσω του διαδικτύου. Οι διαδικτυακοί ραδιοφωνικοί σταθμοί μπορεί να είναι μια ταυτόχρονη ροή ενός κανονικού ραδιοφωνικού σταθμού, ένας ερασιτέχνης που μεταδίδει το δικό του σταθμό ή εμπορικοί διαδικτυακοί σταθμοί με παραγωγούς, ζωντανό πρόγραμμα και διαφημίσεις.</p>
+  
+  </section>
+  
+  <section id="addradio">
+  
+  <title>Προσθήκη ραδιοφωνικού σταθμού</title>
+  
+  <p>Για να προσθέσετε ένα ραδιοφωνικό σταθμό στο Banshee, πατήστε <gui>Προσθήκη σταθμού</gui> στην πάνω δεξιά γωνία του Banshee ή από το μενού επιλέξτε <guiseq><gui>Μενού</gui><gui>Προσθήκη σταθμού</gui></guiseq>.</p>
+  
+  <p>Από την ιστοσελίδα του διαδικτυακού ραδιοφωνικού σταθμού, αντιγράψτε το URL της ροής του στον περιηγητή ιστού σας. Στους περισσότερους περιηγητές μπορείτε να κάνετε δεξί κλικ στο σύνδεσμο και να πατήσετε <gui>Αντιγραφή δεσμού</gui>.</p>
+   
+
+  <p>Το Banshee θα σας ζητήσει να εισάγετε το <gui>Είδος σταθμού</gui>. Επιλέξτε το είδος της μουσικής που παίζει ο σταθμός από τις διαθέσιμες επιλογές. Στη συνέχεια θα πρέπει εισάγετε το <gui>Όνομα σταθμού</gui>. Εισάγετε ένα όνομα για το σταθμό. Μετά πατήστε το tab ή με το ποντίκι σας επιλέξτε το διάλογο <gui>URL ροής:</gui> για να επικολλήσετε το URL του ραδιοφωνικού σταθμού. Με χρήση του ποντικιού σας κάντε δεξί κλικ και επιλέξτε <gui>Επικόλληση</gui> ή πατήστε <keyseq><key>Control</key>+<key>V</key></keyseq>.</p>
+  
+  <p>Μπορείτε προαιρετικά να συμπληρώσετε τα πεδία για <gui>Δημιουργό σταθμού</gui>, <gui>Περιγραφή</gui> και <gui>Βαθμολογία</gui>.</p>
+  
+  <p>Μετά πατήστε <gui>Αποθήκευση</gui> για να αποθηκεύσετε τον διαδικτυακό σταθμό στο Banshee.</p>
+  
+  </section>
+  	  	  
+</page>
diff --git a/help/el/advanced.page b/help/el/advanced.page
new file mode 100644
index 0000000..91b064f
--- /dev/null
+++ b/help/el/advanced.page
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="guide" style="2column" id="advanced">
+
+  <info>
+    <link type="guide" xref="index#advanced"/>
+    <desc>Βοήθεια για προχωρημένες ενέργειες</desc>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-29" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+  
+  <title>Επιλογές για προχωρημένους και βοήθεια</title>
+
+  <section id="keyboard" style="2column">
+    <info>
+      <title type="link">Συντομεύσεις πληκτρολογίου</title>
+    </info>
+    <title>Συντομεύσεις πληκτρολογίου</title>
+  </section>
+	
+</page>
diff --git a/help/el/amazon.page b/help/el/amazon.page
new file mode 100644
index 0000000..878fdf7
--- /dev/null
+++ b/help/el/amazon.page
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="amazon">
+
+  <info>
+    <link type="guide" xref="index#extensions"/>
+    <link type="seealso" xref=""/>
+    <desc>Συγχρονισμός και αγορά μουσικής από το κατάστημα MP3 του Amazon.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2010-07-11" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Κατάστημα Amazon MP3</title>    
+  
+  <p>Το Banshee υποστηρίζει μεταφόρτωση και εισαγωγή μουσικής από το κατάστημα Amazon MP3. Μπορείτε να εισάγετε χειροκίνητα μουσικά αρχεία του Amazon, να αγοράσετε μουσική από τον περιηγητή ιστού σας ή να αγοράσετε μουσική μέσα από το Banshee. Το Amazon προσφέρει μουσική προς πώληση ως MP3 μόνο σε ορισμένες χώρες και ανάλογα με την τοποθεσία σας μπορεί να μην είναι δυνατή η αγορά MP3 από το Amazon.</p>
+   
+   <note style="important">
+     <p>Το Banshee χρησιμοποιεί ένα κωδικό συνεργάτη για όλες τις αγορές μουσικής. Όλα τα χρήματα που συγκεντρώνονται μέσω αυτού του κωδικού δωρίζονται στο GNOME Foundation.</p>
+   </note>
+   
+  <section id="amazon-browser">
+  <title>Αγορά MP3 από το Amazon στον περιηγητή ιστού σας</title> 
+  
+  <p>Η μουσική που αγοράστηκε από το κατάστημα MP3 του Amazon μπορεί να μεταφορτωθεί αυτόματα και να εισαχθεί στο Banshee. Το Banshee συσχετίζεται με το αρχείο .amz που παρέχει το Amazon για αγορές MP3. Όταν αγοράζετε μουσική στο Amazon, ο περιηγητής ιστού σας θα μεταφορτώσει το αρχείο .amz και το Banshee θα το ανοίξει αυτόματα και θα αρχίσει τη μεταφόρτωση και εισαγωγή της μουσικής.</p>
+  </section>
+  
+  <section id="amazon-banshee">
+  <title>Αγορά MP3 του Amazon στο Banshee</title> 
+  
+  <p>Μπορείτε επίσης να αναζητήσετε τραγούδια στο Amazon μέσα από το Banshee. Επιλέξτε το κατάστημα Amazon MP3 από το μενού του Banshee αριστερά. Αυτό θα φορτώσει το κατάστημα Amazon MP3 ακριβώς σαν να είσασταν σε περιηγητή ιστού. Μπορείτε να αναζητήσετε στο Amazon τη μουσική που επιθυμείτε να αγοράσετε και μετά τη σύνδεση στο Amazon, να την αγοράσετε με ένα κλικ. Το Banshee θα μεταφορτώσει και θα εισάγει αυτόματα τις αγορές σας στη βιβλιοθήκη.</p>
+  </section>
+  
+  <section id="amazon-manual">
+  <title>Εισαγωγή MP3 του Amazon χειροκίνητα</title> 
+  
+  <p>Όταν γίνεται αγορά μουσικής από το Amazon με περιηγητή ιστού, μεταφορτώνεται και αποθηκεύεται στον υπολογιστή σας ένα αρχείο με επέκταση .amz. Για να εισάγετε χειροκίνητα μουσική που αγοράσθηκε από το Amazon, στο μενού του Banshee επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή πολυμέσων</gui></guiseq> και επιλέξτε το αρχείο *.amz που θα εισαχθεί. Το Banshee θα ανοίξει αυτό το αρχείο και θα συνδεθεί στο κατάστημα Amazon MP3 για να ξεκινήσει τη μεταφόρτωση.</p>
+  
+  <note style="warning">
+    <p>Τα αρχεία .amz του Amazon είναι ενεργά μόνο για μικρό χρονικό διάστημα. Αν δεν μεταφορτώσετε τη μουσική σας γρήγορα, το αρχείο θα λήξει και δεν θα μπορέσετε να μεταφορτώσετε τη μουσική σας από το Amazon. Το Amazon δεν δημοσιοποιεί για πόσο χρόνο είναι ενεργά τα αρχεία. Συνίσταται να μεταφορτώσετε και να εισάγετε τυχόν αγορές σας από το Amazon εντός μίας ώρας από την αγορά.</p>
+  </note>
+  </section> 
+	
+</page>
diff --git a/help/el/el.po b/help/el/el.po
new file mode 100644
index 0000000..8fd0baa
--- /dev/null
+++ b/help/el/el.po
@@ -0,0 +1,1270 @@
+# Copyright (C) 2010 banshee's COPYRIGHT HOLDER
+# This file is distributed under the same license as the banshee package.
+# Michael Kotsarinis <mk73628 at gmail.com>, 2010
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: banshee master\n"
+"POT-Creation-Date: 2010-11-10 18:26+0000\n"
+"PO-Revision-Date: 2010-11-12 14:15+0200\n"
+"Last-Translator: Michael Kotsarinis <mk73628 at gmail.com>\n"
+"Language-Team: Greek <team at lists.gnome.gr>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: Greek\n"
+"X-Poedit-Country: GREECE\n"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/ui.page:29(None)
+#: C/introduction.page:45(None)
+msgid "@@image: 'figures/banshee.png'; md5=THIS FILE DOESN'T EXIST"
+msgstr "@@image: 'figures/banshee.png'; md5=THIS FILE DOESN'T EXIST"
+
+#: C/ui.page:8(desc)
+msgid "An overview of <app>Banshee's</app> user interface."
+msgstr "Μια επισκόπηση της διεπαφής χρήστη του <app>Banshee</app>"
+
+#: C/ui.page:12(name)
+#: C/sync.page:12(name)
+#: C/sort.page:12(name)
+#: C/search.page:12(name)
+#: C/play.page:12(name)
+#: C/play-queue.page:12(name)
+#: C/manage-tags.page:13(name)
+#: C/manage-playlists.page:13(name)
+#: C/manage-coverart.page:12(name)
+#: C/lastfm.page:12(name)
+#: C/keyboardshortcuts.page:10(name)
+#: C/introduction.page:12(name)
+#: C/index.page:9(name)
+#: C/import.page:11(name)
+#: C/extensions.page:11(name)
+#: C/amazon.page:12(name)
+#: C/advanced.page:11(name)
+#: C/add-radio.page:14(name)
+#: C/add-podcast.page:14(name)
+msgid "Paul Cutler"
+msgstr "Paul Cutler"
+
+#: C/ui.page:13(email)
+#: C/sync.page:13(email)
+#: C/sort.page:13(email)
+#: C/search.page:13(email)
+#: C/play.page:13(email)
+#: C/play-queue.page:13(email)
+#: C/manage-tags.page:14(email)
+#: C/manage-playlists.page:14(email)
+#: C/manage-coverart.page:13(email)
+#: C/lastfm.page:13(email)
+#: C/keyboardshortcuts.page:11(email)
+#: C/introduction.page:13(email)
+#: C/index.page:10(email)
+#: C/import.page:12(email)
+#: C/extensions.page:12(email)
+#: C/amazon.page:13(email)
+#: C/advanced.page:12(email)
+#: C/add-radio.page:15(email)
+#: C/add-podcast.page:15(email)
+msgid "pcutler at gnome.org"
+msgstr "pcutler at gnome.org"
+
+#: C/ui.page:24(title)
+msgid "Introduction to the Banshee User Interface"
+msgstr "Εισαγωγή στη διεπαφή χρήστη του Banshee"
+
+#: C/ui.page:27(title)
+#: C/introduction.page:43(title)
+msgid "<gui>Banshee Media Player</gui> window"
+msgstr "Παράθυρο <gui>Αναπαραγωγή πολυμέσων Banshee</gui>"
+
+#: C/ui.page:28(app)
+#: C/introduction.page:44(app)
+#: C/index.page:21(title)
+msgid "Banshee Media Player"
+msgstr "Αναπαραγωγή πολυμέσων Banshee"
+
+#: C/ui.page:30(p)
+#: C/introduction.page:46(p)
+msgid "<app>Banshee</app> library interface"
+msgstr "Διεπαφή βιβλιοθήκης <app>Banshee</app>"
+
+#: C/ui.page:35(title)
+msgid "Sources"
+msgstr "Πηγές"
+
+#: C/ui.page:36(p)
+msgid "Your music and video sources are shown on the left in Banshee. The sources give you quick access to your Play Queue, Music, Videos, Amazon, Last.fm, Podcasts and more."
+msgstr "Οι πηγές για τη μουσική και τα βίντεό σας εμφανίζονται στα αριστερά στο Banshee. Οι πηγές σας δίνουν γρήγορη πρόσβαση στη Σειρά αναπαραγωγής σας, στη Μουσική, στα Βίντεο, στο Amazon, στο Last.fm, στις Φορητές εκπομπές (Podcasts) και άλλα."
+
+#: C/ui.page:42(p)
+msgid "The menu choices will change depending on the source you have chosen. For example, to use the menu to import a Podcast, you will need to choose the Podcast source. The menu option for importing a Podcast is not available when viewing the video or music library."
+msgstr "Οι επιλογές του μενού θα αλλάζουν ανάλογα με την πηγή που έχετε επιλέξει. Παραδείγματος χάριν, για να χρησιμοποιήσετε το μενού για την εισαγωγή μιας φορητής εκπομπής (podcast), πρέπει να επιλέξετε την πηγή Φορητές εκπομπές. Η επιλογή του μενού για εισαγωγή φορητής εκπομπής δεν είναι διαθέσιμη όταν βλέπετε τη βιβλιοθήκη των βίντεο ή της μουσικής."
+
+#: C/ui.page:50(title)
+msgid "Library Browser"
+msgstr "Περιηγητής βιβλιοθήκης"
+
+#: C/ui.page:51(p)
+msgid "When you select a music or video source from Sources, Banshee will display your content in the Library browser. Depending on the source you choose, Banshee can display your music or video library, Podcast subscriptions or even the Amazon Music Store to allow you to buy music."
+msgstr "Όταν επιλέγετε μια πηγή μουσικής ή βίντεο από τις πηγές σας, το Banshee θα εμφανίσει το περιεχόμενό σας στον περιηγητή βιβλιοθήκης. Ανάλογα με την πηγή που επιλέγετε, το Banshee μπορεί να εμφανίσει τη βιβλιοθήκη σας μουσικής ή βίντεο ή ακόμα το κατάστημα μουσικής του Amazon για να σας επιτρέψει να αγοράσετε μουσική."
+
+#: C/ui.page:58(title)
+msgid "Now Playing View"
+msgstr "Προβολή τρέχουσας αναπαραγωγής"
+
+#: C/ui.page:59(p)
+msgid "Helpful when using Banshee in full screen mode, the Now Playing mode hides the library to give you a larger view of the music or video you're watching. When listening to music, the Now Playing view will show you the artist name, album and cover art if available. If you are watching a video, Banshee will display the video."
+msgstr "Βοηθάει όταν χρησιμοποιείτε το Banshee σε κατάσταση πλήρους οθόνης, η κατάσταση τρέχουσας αναπαραγωγής αποκρύπτει τη βιβλιοθήκη για να σας δώσει μια μεγαλύτερη προβολή της μουσικής ή του βίντεο που παρακολουθείτε. Όταν ακούτε μουσική, η προβολή τρέχουσας αναπαραγωγής θα εμφανίσει το όνομα του καλλιτέχνη, το δίσκο και το εξώφυλλο, αν είναι διαθέσιμα. Αν παρακολουθείτε βίντεο το Banshee θα εμφανίσει το βίντεο."
+
+#: C/ui.page:65(p)
+msgid "To change Now Playing to hide the Banshee user interface and use the full screen mode, you can press the <key>F</key>, press the <gui>Fullscreen</gui> button in the upper right hand corner of Banshee, or choose <guiseq>View<gui/>Fullscreen<gui/></guiseq> to start Fullscreen mode."
+msgstr "Για να αλλάξετε την τρέχουσα αναπαραγωγή για να αποκρυφτεί η διεπαφή χρήστη του Banshee και να χρησιμοποιηθεί η κατάσταση πλήρους οθόνης, πατήστε το <key>F</key> ή το κουμπί <gui>Πλήρης οθόνη</gui> στην πάνω δεξιά γωνία του Banshee ή επιλέξτε <guiseq>Προβολή<gui/>Πλήρης οθόνη<gui/></guiseq> για να αρχίσετε την κατάσταση πλήρους οθόνης."
+
+#: C/ui.page:74(title)
+msgid "Library"
+msgstr "Βιβλιοθήκη"
+
+#: C/ui.page:75(p)
+msgid "The Library view in Banshee will change depending on the Source you have chosen. The Music Library will display cover art, artists in your library, and list of songs. The Podcast Library will display your Podcast subscriptions, podcasts that are downloaded or not downloaded, and all, new or old podcasts. Please see each Source's help page for detailed information on managing a source."
+msgstr "Η προβολή βιβλιοθήκης στο Banshee θα αλλάξει ανάλογα με την πηγή που έχετε επιλέξει. Η βιβλιοθήκη μουσικής θα εμφανίσει εξώφυλλο, καλλιτέχνες στη βιβλιοθήκη σας και λίστα τραγουδιών. Η βιβλιοθήκη φορητών εκπομπών θα εμφανίσει τις συνδρομές σας σε φορητές εκπομπές, εκπομπές που έχουν ή δεν έχουν μεταφορτωθεί και όλες, τις νέες ή τις παλιές εκπομπές. Παρακαλούμε δείτε τη σελίδα βοήθειας κάθε πηγής για λεπτομερείς πληροφορίες για τη διαχείρισή της."
+
+#: C/sync.page:9(desc)
+msgid "Sync your media to a portable media player or smartphone."
+msgstr "Συγχρονίστε τα πολυμέσα σας με μια φορητή συσκευή αναπαραγωγής ή ένα έξυπνο κινητό."
+
+#: C/sync.page:24(title)
+msgid "Sync"
+msgstr "Συγχρονισμός"
+
+#: C/sync.page:26(p)
+msgid "Banshee supports syncing your music to portable media players and smartphones. You can add specific music tracks, albums or playlist or allow Banshee to keep your music player in sync with your entire library. After your player is connected to your computer you can also play back the songs on your portable player in Banshee. When syncing music in a lossless format, such as FLAC, Banshee will automatically transcode your music for you to a lossy format such as Ogg Vorbis or MP3, if you have the correct codecs installed."
+msgstr "Το Banshee υποστηρίζει το συγχρονισμό της μουσικής σας με φορητούς αναπαραγωγείς και κινητά. Μπορείτε να προσθέσετε συγκεκριμένα μουσικά κομμάτια, δίσκους ή λίστες αναπαραγωγής ή να επιτρέψετε στο Banshee να συγχρονίσει τη συσκευή σας με ολόκληρη τη βιβλιοθήκη σας. Αφού η συσκευή σας συνδεθεί στον υπολογιστή σας μπορείτε επίσης να αναπαράγετε τα τραγούδια που είναι σε αυτή μέσω του Banshee. Όταν συγχρονίζετε μουσική σε μη απωλεστική μορφή, όπως το FLAC, το Banshee αυτόματα θα μετατρέψει τη μουσική σας σε μια απωλεστική μορφή, όπως το Ogg Vorbis ή το MP3, αν έχετε τους σωστούς κωδικοποιητές εγκατεστημένους."
+
+#: C/sync.page:37(title)
+msgid "Device Support"
+msgstr "Υποστήριξη συσκευών"
+
+#: C/sync.page:38(p)
+msgid "Banshee supports almost all modern portable music players and smartphones with the notable exception of the Apple iPhone, iPad and iPod Touch."
+msgstr "Το Banshee υποστηρίζει σχεδόν όλες τις σύγχρονες φορητές συσκευές αναπαραγωγής και τα «έξυπνα» κινητά με την αξιοσημείωτη εξαίρεση των iPhone, iPad και iPod Touch της Apple."
+
+#: C/sync.page:42(p)
+msgid "When you plug your device in, Banshee will display it in the left menu. Pressing the device icon will take you to your device home page in Banshee displaying your sync preferences."
+msgstr "Όταν συνδέσετε τη συσκευή σας, το Banshee θα την εμφανίσει στο αριστερό μενού. Πατώντας το εικονίδιο της συσκευής θα μεταφερθείτε στην αρχική της σελίδα στο Banshee όπου εμφανίζονται οι προτιμήσεις σας συγχρονισμού."
+
+#: C/sync.page:50(title)
+msgid "Sync Your Music"
+msgstr "Συγχρονίστε τη μουσική σας"
+
+#: C/sync.page:51(p)
+msgid "You can choose to manage the media on your portable music by having Banshee automatically sync it or manage your music and media manually."
+msgstr "Μπορείτε να επιλέξετε να διαχειρίζεστε τα πολυμέσα στη φορητή σας συσκευή βάζοντας το Banshee να κάνει αυτόματο συγχρονισμό ή να διαχειρίζεστε τη μουσική και τα πολυμέσα σας χειροκίνητα."
+
+#: C/sync.page:56(p)
+msgid "Choose your device from the Banshee menu and then choose how you want to sync your media, including:"
+msgstr "Επιλέξτε τη συσκευή σας από το μενού του Banshee και μετά επιλέξτε πως θέλετε να συγχρονίσετε τα πολυμέσα σας, συμπεριλαμβανομένων:"
+
+#: C/sync.page:60(p)
+msgid "Music"
+msgstr "Μουσικής"
+
+#: C/sync.page:61(p)
+msgid "Audiobooks"
+msgstr "Ηχογραφημένων βιβλίων"
+
+#: C/sync.page:62(p)
+msgid "Videos"
+msgstr "Βίντεο"
+
+#: C/sync.page:63(p)
+msgid "Podcast"
+msgstr "Φορητών εκπομπών (podcast)"
+
+#: C/sync.page:66(p)
+msgid "From the dropdown menu next to each of the media, choose from:"
+msgstr "Από το αναπτυσσόμενο μενού δίπλα σε κάθε μέσο, επιλέξτε από:"
+
+#: C/sync.page:69(p)
+msgid "Manage manually"
+msgstr "Χειροκίνητη διαχείριση"
+
+#: C/sync.page:70(p)
+msgid "Sync entire library"
+msgstr "Συγχρονισμός όλης της βιβλιοθήκης"
+
+#: C/sync.page:74(p)
+msgid "If you choose to sync your entire library automatically with your portable media player make sure your portable media player has enough storage space. If your library is larger than the space on your portable media player, Banshee will sync media until your player is full and then stop."
+msgstr "Αν επιλέξετε να συγχρονίσετε όλη τη βιβλιοθήκη σας αυτόματα με τη φορητή συσκευή σας αναπαραγωγής βεβαιωθείτε ότι η συσκευή έχει αρκετό χώρο αποθήκευσης. Αν η βιβλιοθήκη σας είναι μεγαλύτερη από το χώρο στη συσκευή, το Banshee θα συγχρονίσει μέχρι να γεμίσει η συσκευή και μετά θα σταματήσει."
+
+#: C/sync.page:82(p)
+msgid "If you have created playlists or smart playlists in your music library, they will also be displayed as a sync option for Music. This can be helpful when creating smart playlists, as smart playlists will automatically update as new content is added based on the playlist rules, and Banshee will sync the new playlist to your device every time you plug it in."
+msgstr "Αν έχετε δημιουργήσει λίστες αναπαραγωγής ή έξυπνες λίστες αναπαραγωγής στη μουσική σας βιβλιοθήκη, θα εμφανιστούν και αυτές ως επιλογή συγχρονισμού για τη μουσική. Αυτό μπορεί να βοηθά κατά τη δημιουργία έξυπνων λιστών αναπαραγωγής, καθώς αυτές θα ενημερώνονται αυτόματα κατά την προθήκη νέου περιεχόμενου με βάση τους κανόνες της λίστας και το Banshee θα συγχρονίζει τη νέα λίστα με τη συσκευή σας κάθε φορά που τη συνδέετε."
+
+#: C/sync.page:89(p)
+msgid "Banshee will display the total hard drive space of your portable music player in a graph in the bottom center of Banshee. The graph will show you how much space is taken by audio files, video, other and free space. Directly below that Banshee will show you how many total items are stored on your portable music player, how many hours or days of listening that is equal to, and total space used."
+msgstr "Το Banshee θα εμφανίσει το συνολικό χώρο του σκληρού δίσκου της φορητής συσκευής σας αναπαραγωγής με ένα γράφημα στο κέντρο και κάτω στο Banshee. Το γράφημα θα σας δείξει πόσος χώρος καταλαμβάνεται από αρχεία ήχου, βίντεο και άλλα και τον ελεύθερο χώρο. Ακριβώς από κάτω το Banshee θα εμφανίσει πόσα συνολικά αντικείμενα είναι αποθηκευμένα στη συσκευή σας, σε πόσες ώρες ή ημέρες ακρόασης αντιστοιχούν και το συνολικό χώρο που χρησιμοποιείται."
+
+#: C/sync.page:100(title)
+msgid "Sync Your Entire Library"
+msgstr "Συγχρονισμός ολόκληρης της βιβλιοθήκης σας"
+
+#: C/sync.page:101(p)
+msgid "You can drag and drop media to your portable music player form Banshee. Select the file or files you want to copy to your portable media player and then press and hold your right mouse button and drag the file(s) to your portable media player icon in Banshee. This will copy the files to your device."
+msgstr "Μπορείτε να σύρετε και να αφήσετε μέσα στη φορητή σας συσκευή από το Banshee. Επιλέξετε το αρχεία ή τα αρχεία που θέλετε να αντιγράψετε στη φορητή σας συσκευή αναπαραγωγής και μετά πατήστε και κρατήστε πατημένο το δεξί κουμπί του ποντικού και σύρετε το αρχείο ή τα αρχεία στο εικονίδιο της φορητής σας συσκευής στο Banshee. Αυτό θα αντιγράψει τα αρχεία στη συσκευή σας."
+
+#: C/sync.page:108(p)
+msgid "If your music library is encoded in a format that your portable media player does not support, such as OGG or FLAC, and you have the necessary codecs installed, Banshee can automatically transcode these files to MP3 when transferring to your portable media player. Check with your Linux distribution for the necessary codecs as it is outside the scope of this help and varies by distribution."
+msgstr "Αν η μουσική σας βιβλιοθήκη είναι κωδικοποιημένη σε μορφή που δεν υποστηρίζει η φορητή σας συσκευή, όπως OGG ή FLAC, και έχετε τους απαραίτητους κωδικοποιητές εγκατεστημένους, το Banshee θα μετατρέψει αυτόματα αυτά τα αρχεία σε MP3 κατά τη μεταφορά τους στη φορητή συσκευή αναπαραγωγής. Ελέγξτε τη διανομή σας Linux για τους απαραίτητους κωδικοποιητές καθώς είναι εκτός του πεδίου αυτής της βοήθειας και διαφέρει ανά διανομή."
+
+#: C/sync.page:117(p)
+msgid "You may need to eject your device to load the files correctly on your portable music player. To eject your device in Banshee, using your mouse right click the device in the Banshee menu and press <gui>Disconnect</gui>."
+msgstr "Μπορεί να χρειασθεί να αφαιρέσετε τη φορητή συσκευή σας για να φορτωθούν τα αρχεία σωστά σε αυτή. Για να το κάνετε αυτό στο Banshee, κάντε δεξί κλικ με το ποντίκι πάνω στη συσκευή στο μενού του Banshee και πατήστε <gui>Αποσύνδεση</gui>."
+
+#: C/sync.page:127(title)
+msgid "Play Music From Your Portable Music Player"
+msgstr "Αναπαραγωγή μουσικής από τη φορητή σας συσκευή αναπαραγωγής"
+
+#: C/sync.page:128(p)
+msgid "You can play music stored on your portable music player directly in Banshee. Choose your player in the Banshee menu on the left and your portable music player's library will be displayed. You can then play music in Banshee just as you would music in your own library."
+msgstr "Μπορείτε να αναπαράγετε μουσική αποθηκευμένη στη φορητή σας συσκευή απευθείας στο Banshee. Επιλέξτε τη από το μενού του Banshee αριστερά και θα εμφανιστεί η βιβλιοθήκη μουσικής που περιέχει. Μπορείτε εν συνεχεία να αναπαράγετε τη μουσική ακριβώς όπως με τη μουσική της βιβλιοθήκης σας."
+
+#: C/sync.page:135(title)
+msgid "Remove Music From your Portable Music Player"
+msgstr "Αφαιρέστε μουσική από τη φορητή σας συσκευή αναπαραγωγής"
+
+#: C/sync.page:136(p)
+msgid "To remove songs stored on your portable music player, choose your player in Banshee to view its library. Then choose the tracks you would like to remove and right click the tracks and choose \"Delete\" or from the menu choose <guiseq><gui>Edit</gui><gui>Delete</gui></guiseq>."
+msgstr "Για να αφαιρέσετε τραγούδια αποθηκευμένα στη φορητή σας συσκευή, επιλέξτε τη στο Banshee για να δείτε τη βιβλιοθήκη της. Έπειτα επιλέξτε τα κομμάτια που θα θέλατε να αφαιρέσετε και κάντε δεξί κλικ στα κομμάτια και επιλέξτε \"Διαγραφή\" ή από το μενού επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Διαγραφή</gui></guiseq>."
+
+#: C/sync.page:142(p)
+msgid "Deleting files from your portable music will permanently remove the files and you will not be able to recover them."
+msgstr "Η διαγραφή αρχείων από τη φορητή σας συσκευή θα διαγράψει μόνιμα τα αρχεία και δεν θα είναι δυνατό να τα ανακτήσετε."
+
+#: C/sort.page:9(desc)
+msgid "Sort your media and add additional columns."
+msgstr "Ταξινομήστε τα μέσα σας και προσθέστε επιπλέον στήλες."
+
+#: C/sort.page:24(title)
+msgid "Sort your media"
+msgstr "Ταξινομήστε τα μέσα σας"
+
+#: C/sort.page:28(title)
+msgid "Adding Columns"
+msgstr "Προσθήκη στηλών"
+
+#: C/sort.page:30(p)
+msgid "As your library grows, you may want to sort your library view to play search or view certain songs, artists, or albums."
+msgstr "Καθώς η βιβλιοθήκη σας μεγαλώνει, μπορεί να θέλετε να ταξινομήσετε την προβολή της για να αναπαράγετε, αναζητήσετε ή να προβάλετε συγκεκριμένα τραγούδια, καλλιτέχνες ή δίσκους."
+
+#: C/sort.page:34(p)
+msgid "You can add additional columns to the library view in <app>Banshee</app> to give you more information about the songs and also allow you to sort by. By default, Banshee displays columns for songs including <gui>Name</gui>, <gui>Artist</gui>, <gui>Album</gui> and <gui>Time</gui>. To add additional columns, using your mouse right click on any of the columns and Banshee will display all available column to choose from. Click the checkbox next to the name of the column you wish to add to the library view."
+msgstr "Μπορείτε να προσθέσετε περισσότερες στήλες στην προβολή βιβλιοθήκης στο <app>Banshee</app> για να έχετε περισσότερες πληροφορίες για τα τραγούδια και επίσης να μπορείτε να τα ταξινομήσετε. Ως προεπιλογή, το Banshee εμφανίζει για τα τραγούδια στήλες που περιλαμβάνουν <gui>Όνομα</gui>, <gui>Καλλιτέχνη</gui>, <gui>Δίσκο</gui> και <gui>Διάρκεια</gui>. Για να προσθέσετε επιπλέον στήλες, κάντε δεξί κλικ με το ποντίκι σας σε οποιαδήποτε από τις στήλες και το Banshee θα εμφανίσει όλες τις διαθέσιμες στήλες για να επιλέξετε. Κάντε κλικ στο πεδίο δίπλα από το όνομα της στήλης που επιθυμείτε να προσθέσετε στην προβολή βιβλιοθήκης."
+
+#: C/sort.page:46(title)
+msgid "Sorting Columns"
+msgstr "Ταξινόμηση στηλών"
+
+#: C/sort.page:47(p)
+msgid "You can sort your library by using your mouse to click on any of the columns displayed in library view. If you wish to sort your music library by Artist, click the <gui>Artist</gui> column header and Banshee will automically sort that column alphabetically. Clicking the <gui>Artist</gui> column again will sort the column in reverse alphabetical order."
+msgstr "Μπορείτε να ταξινομήσετε τη βιβλιοθήκη σας κάνοντας κλικ με το ποντίκι σε οποιαδήποτε στήλη εμφανίζεται στην προβολή βιβλιοθήκης. Αν επιθυμείτε να ταξινομήσετε τη μουσική σας βιβλιοθήκη κατά καλλιτέχνη, κάντε κλικ στην επικεφαλίδα της στήλης <gui>Καλλιτέχνης</gui> και το Banshee αυτόματα θα την ταξινομήσει αλφαβητικά. Κάνοντας πάλι κλικ στη στήλη <gui>Καλλιτέχνης</gui> το Banshee θα την ταξινομήσει με αντίστροφη αλφαβητική σειρά."
+
+#: C/search.page:9(desc)
+msgid "Search your media and perfom basic queries."
+msgstr "Αναζήτηση στα μέσα σας και βασικά ερωτήματα."
+
+#: C/search.page:24(title)
+msgid "Searching your Banshee Library"
+msgstr "Αναζήτηση στη βιβλιοθήκη σας του Banshee"
+
+#: C/search.page:26(p)
+msgid "Banshee features a powerful search language. You can search your library quickly and easily with basic search terms or perform detailed searches with Banshee's advanced search terminology."
+msgstr "Το Banshee έχει μια ισχυρή γλώσσα αναζήτησης. Μπορείτε να ψάξετε εύκολα και γρήγορα στη βιβλιοθήκη σας με βασικούς όρους αναζήτησης ή να κάνετε λεπτομερείς αναζητήσεις με την προχωρημένη ορολογία αναζήτησης του Banshee."
+
+#: C/search.page:30(p)
+msgid "To perform a search of your media in Banshee, press the <key>S</key> or click the <gui>Search</gui> box in the upper right hand corner of the Library view in Banshee."
+msgstr "Για να εκτελέσετε μια αναζήτηση στη βιβλιοθήκη των μέσων σας στο Banshee, πατήστε το <key>S</key> ή κάντε κλικ στο πεδίο <gui>Αναζήτηση</gui> στην πάνω δεξιά γωνία της προβολής βιβλιοθήκης στο Banshee."
+
+#: C/search.page:35(p)
+msgid "A search query consists of some basic terms, for example, <em>dave matthews</em>. By entering <em>dave matthews</em> in the search box, Banshee will search all metatdata fields including Track Title, Album Title, Album Artist, Year, etc. Any track whose metadata includes <em>dave</em> and <em>matthews</em> will be returned. Search terms are case, meaningyou don't have to capitalize. <em>dave</em>, <em>Dave</em>, and <em>DAVE</em> all mean the same thing when searching."
+msgstr "Ένα ερώτημα αναζήτησης αποτελείται από μερικούς βασικούς όρους, παραδείγματος χάριν, <em>dave matthews</em>. Εισάγοντας <em>dave matthews</em> στο πεδίο αναζήτησης, το Banshee θα ψάξει σε όλα τα πεδία μεταδεδομένων, περιλαμβανομένων των Τίτλου κομματιού, Τίτλου δίσκου, Καλλιτέχνη δίσκου, Έτους, κλπ. Οποιοδήποτε κομμάτι του οποίου τα μεταδεδομένα περιλαμβάνουν το <em>dave</em> και το <em>matthews</em> θα εντοπισθεί. Οι όροι αναζήτησης δεν κάνουν διάκριση πεζών-κεφαλαίων, δηλαδή δεν χρειάζεται να χρησιμοποιήσετε κεφαλαία στην αρχή των λέξεων. Τα <em>dave</em>, <em>Dave</em>, και <em>DAVE</em> όλα σημαίνουν το ίδιο πράγμα κατά την αναζήτηση."
+
+#: C/search.page:43(title)
+msgid "Basic Operators"
+msgstr "Βασικοί τελεστές"
+
+#: C/search.page:44(p)
+msgid "Operators can be placed between any two search words or placed before a search word. The default operation is <gui>AND</gui> and is used when no other operators are used between two search terms. Because it is the default, there is no explicit AND operator."
+msgstr "Οι τελεστές μπορεί να τοποθετηθούν μεταξύ οποιωνδήποτε δύο αναζητούμενων λέξεων ή πριν από μια αναζητούμενη λέξη. Η προεπιλεγμένη λειτουργία είναι <gui></gui> και χρησιμοποιείται όταν δεν έχουν ορισθεί άλλοι τελεστές μεταξύ δύο όρων της αναζήτησης. Επειδή είναι η προεπιλογή, δεν εμφανίζεται το AND ως τελεστής."
+
+#: C/search.page:49(p)
+msgid "Other basic operators include <gui>OR</gui> and <gui>NOT</gui>. Together, these three operations can yield very powerful queries to help you search your media."
+msgstr "Άλλοι βασικοί τελεστές περιλαμβάνουν το <gui>OR</gui> και το <gui>NOT</gui>. Μαζί, αυτοί οι τρεις τελεστές μπορούν να συνθέσουν πολύ ισχυρά ερωτήματα για να σας βοηθήσουν στην αναζήτηση των μέσων σας."
+
+#: C/search.page:56(title)
+msgid "Logical Operators and Examples"
+msgstr "Λογικοί τελεστές και παραδείγματα"
+
+#: C/search.page:57(p)
+msgid "The following is a list of logical operators and examples of the search results when searching using them."
+msgstr "Η ακόλουθη είναι μια λίστα λογικών τελεστών και παραδειγμάτων των αποτελεσμάτων κατά την αναζήτηση με χρήση τους."
+
+#: C/search.page:62(gui)
+msgid "Operator"
+msgstr "Τελεστής"
+
+#: C/search.page:62(gui)
+#: C/search.page:84(gui)
+msgid "Description"
+msgstr "Περιγραφή"
+
+#: C/search.page:65(p)
+msgid "<em>default</em>, <em>white space</em>"
+msgstr "<em>προεπιλογή</em>, <em>κενό διάστημα</em>"
+
+#: C/search.page:65(p)
+msgid "Search for two terms with a space between the two words or terms."
+msgstr "Αναζήτηση για δύο όρους με ένα διάστημα μεταξύ των δύο λέξεων ή όρων."
+
+#: C/search.page:69(p)
+msgid "OR, or, <key>|</key>, <key>,</key>"
+msgstr "OR, or, <key>|</key>, <key>,</key>"
+
+#: C/search.page:69(p)
+msgid "Search results will be two terms with either result in any field."
+msgstr "Τα αποτελέσματα θα είναι δύο όροι με οποιοδήποτε από τα δύο αποτελέσματα σε οποιοδήποτε πεδίο."
+
+#: C/search.page:73(p)
+msgid "NOT, not,<key>-</key>"
+msgstr "NOT, not,<key>-</key>"
+
+#: C/search.page:73(p)
+msgid "Do not display search results with any search team that follows the operator of NOT, not,<key>-</key>."
+msgstr "Να μην εμφανισθούν αποτελέσματα με οποιοδήποτε όρο που ακολουθεί μετά τον τελεστή NOT, not,<key>-</key>."
+
+#: C/search.page:80(p)
+msgid "Examples of logical operations include:"
+msgstr "Παραδείγματα λογικών αναζητήσεων περιλαμβάνουν:"
+
+#: C/search.page:84(gui)
+msgid "Query"
+msgstr "Ερώτημα"
+
+#: C/search.page:87(p)
+msgid "dave matthews"
+msgstr "dave matthews"
+
+#: C/search.page:87(p)
+msgid "Matches any fields in a track containing both <em>dave</em> and <em>matthews</em>."
+msgstr "Ταιριάζει με οποιαδήποτε πεδία σε ένα κομμάτι περιέχουν και το <em>dave</em> και το <em>matthews</em>."
+
+#: C/search.page:92(p)
+msgid "dave, matthews"
+msgstr "dave, matthews"
+
+#: C/search.page:92(p)
+#: C/search.page:97(p)
+#: C/search.page:102(p)
+msgid "Matches any fields in a track containing both <em>dave</em> or <em>matthews</em>."
+msgstr "Ταιριάζει με οποιαδήποτε πεδία ενός κομματιού περιλαμβάνουν το <em>dave</em> ή το <em>matthews</em>."
+
+#: C/search.page:97(p)
+msgid "dave or matthews"
+msgstr "dave or matthews"
+
+#: C/search.page:102(p)
+msgid "dave | matthews"
+msgstr "dave | matthews"
+
+#: C/search.page:107(p)
+msgid "-\"dave matthews\""
+msgstr "-\"dave matthews\""
+
+#: C/search.page:107(p)
+msgid "Displays all tracks whose fields do not containt <em>dave matthews</em>."
+msgstr "Εμφανίζει όλα τα κομμάτια των οποίων τα πεδία δεν περιέχουν <em>dave matthews</em>."
+
+#: C/search.page:114(p)
+msgid "For more information on performing more complex search queries, see the <link xref=\"adv-search\"/> page."
+msgstr "Για περισσότερες πληροφορίες για την εκτέλεση πιο σύνθετων ερωτημάτων αναζήτησης, δείτε τη σελίδα <link xref=\"adv-search\"/>."
+
+#: C/rb-import.page:8(desc)
+msgid "Import music and categorizations from the <app>Rhythmbox</app> music player."
+msgstr "Εισάγετε μουσική και κατηγοριοποιήσεις από το <app>Rhythmbox</app>."
+
+#: C/rb-import.page:12(title)
+msgid "Import your <app>Rhythmbox</app> library"
+msgstr "Εισάγετε τη βιβλιοθήκη σας του <app>Rhythmbox</app>"
+
+#: C/play.page:9(desc)
+msgid "Play your videos and music files."
+msgstr "Αναπαράγετε τα βίντεο και τα αρχεία σας μουσικής."
+
+#: C/play.page:24(title)
+msgid "Play Your Media"
+msgstr "Αναπαραγωγή των πολυμέσων σας"
+
+#: C/play.page:27(title)
+msgid "Play your music"
+msgstr "Αναπαραγωγή της μουσικής σας"
+
+#: C/play.page:29(p)
+msgid "To play music in Banshee, choose the Music source. The music library will show you all artists in your music library, cover art for each album, and a list of all songs in your library."
+msgstr "Για αναπαραγωγή μουσικής στο Banshee, επιλέξτε την πηγή μουσική. Η βιβλιοθήκη μουσικής θα σας εμφανίσει όλους τους καλλιτέχνες στη βιβλιοθήκη, το εξώφυλλο για κάθε δίσκο και μια λίστα όλων των τραγουδιών στη βιβλιοθήκη σας."
+
+#: C/play.page:33(p)
+msgid "Choose the album or song you wish to play from the list of artists, albums or use the search bar in the upper right hand corner of Banshee."
+msgstr "Επιλέξτε το δίσκο ή το τραγούδι που θέλετε να αναπαραχθεί από τη λίστα καλλιτεχνών, δίσκων ή χρησιμοποιήστε τη γραμμή αναζήτησης στην πάνω δεξιά γωνία του Banshee."
+
+#: C/play.page:37(p)
+msgid "To start playing a song, use your mouse to double click the song name, press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Για να αρχίσετε την αναπαραγωγή ενός τραγουδιού, κάντε διπλό κλικ με το ποντίκι σας στο όνομα του τραγουδιού, πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play.page:42(p)
+msgid "You can also start playing an album by choosing the album in the album browser and pressing use your mouse to double click the song name, press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Μπορείτε να ξεκινήσετε την αναπαραγωγή ενός δίσκου επιλέγοντας το δίσκο στην περιήγηση δίσκων και με διπλό κλικ στο όνομα του τραγουδιού, πατώντας το <key>πλήκτρο διαστήματος</key> ή επιλέγοντας <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play.page:48(p)
+msgid "To play all songs by one artist, choose the artist in the artist browser and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Για να αναπαραχθούν όλα τα τραγούδια ενός καλλιτέχνη, επιλέξτε τον καλλιτέχνη από την περιήγηση και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play.page:53(p)
+msgid "Banshee also displays your Favorite albums (those you play the most), Recent Favorites, Recently Added and Unheard music. Choose the one you wish to listen to and you can play songs from each."
+msgstr "Το Banshee επίσης εμφανίζει τους αγαπημένους σας δίσκους (αυτούς που ακούτε περισσότερο), τα πρόσφατα αγαπημένα, τις πρόσφατες προσθήκες και αυτά που δεν έχουν αναπαραχθεί ποτέ. Επιλέξτε αυτό που επιθυμείτε να ακούσετε και μπορείτε να αναπαράγετε τραγούδια από το καθένα."
+
+#: C/play.page:61(title)
+msgid "Play a video"
+msgstr "Αναπαραγωγή βίντεο"
+
+#: C/play.page:63(p)
+msgid "Your imported videos are listed alphabetically. To play a video, choose the video you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Τα εισαγόμενα βίντεο εμφανίζονται αλφαβητικά. Για την αναπαραγωγή ενός βίντεο, επιλέξτε το βίντεο που θέλετε να αναπαραχθεί από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play.page:68(p)
+msgid "Banshee also shows your Favorite videos (those you watch the most) and Unwatched videos. Choose one and you can play a video from the list."
+msgstr "Το Banshee εμφανίζει επίσης τα αγαπημένα σας βίντεο (αυτά που παρακολουθείτε περισσότερο) και αυτά που δεν έχουν προβληθεί. Επιλέξτε ένα και μπορείτε να το αναπαράγετε από τη λίστα."
+
+#: C/play.page:74(title)
+msgid "Play a Podcast"
+msgstr "Αναπαραγωγή φορητής εκπομπής"
+
+#: C/play.page:76(p)
+msgid "Podcasts shows you all Podcasts you're subscribed too, all Podcast shows available, and the Podcast browser lists all Podcasts in order of newest first."
+msgstr "Οι φορητές εκπομπές (Podcasts) εμφανίζουν όλες τις φορητές εκπομπές στις οποίες είστε συνδρομητής, όλες τις διαθέσιμες φορητές εκπομπές και η περιήγηση στις φορητές εκπομπές εμφανίζει όλες τις διαθέσιμες φορητές εκπομπές με πρώτες τις πιο πρόσφατες."
+
+#: C/play.page:80(p)
+msgid "To play a Podcast, choose the Podcast you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Για την αναπαραγωγή μιας φορητής εκπομπής, επιλέξτε τη φορητή εκπομπή, που θέλετε να αναπαραχθεί, από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play.page:88(title)
+msgid "Play an internet radio station"
+msgstr "Αναπαραγωγή διαδικτυακού ραδιοφωνικού σταθμού"
+
+#: C/play.page:90(p)
+msgid "The Radio source shows you all internet radio stations you have added to Banshee alphabetically."
+msgstr "Η πηγή ραδιόφωνο σας δείχνει αλφαβητικά όλους τους διαδικτυακούς ραδιοφωνικούς σταθμούς που έχετε προσθέσει στο Banshee."
+
+#: C/play.page:94(p)
+msgid "To play an internet radio station, choose the radio station you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
+msgstr "Για την αναπαραγωγή ενός διαδικτυακού ραδιοφωνικού σταθμού, επιλέξτε το σταθμό, που επιθυμείτε, από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee."
+
+#: C/play-queue.page:9(desc)
+msgid "Add media to your play queue."
+msgstr "Προσθήκη μέσων στη σειρά αναπαραγωγής σας."
+
+#: C/play-queue.page:18(title)
+msgid "Play Queue"
+msgstr "Σειρά αναπαραγωγής"
+
+#: C/play-queue.page:20(p)
+msgid "The <gui>Play Queue</gui> allows you to add music to play in a sequential order. You can add many tracks to let you listen to hours of music non-stop. You can add individual tracks or entire albums, and sort or re-order them."
+msgstr "Η <gui>σειρά αναπαραγωγής</gui> σας επιτρέπει να προσθέσετε μουσική για να αναπαραχθεί με τη σειρά. Μπορείτε να προσθέσετε πολλά κομμάτια για να ακούσετε πολλές ώρες μουσικής χωρίς διακοπή. Μπορείτε να προσθέσετε μεμονωμένα κομμάτια ή ολόκληρους δίσκους και να τα ταξινομήσετε ή να τα επαναδιατάξετε."
+
+#: C/play-queue.page:26(title)
+msgid "Add Music to the Play Queue"
+msgstr "Προσθήκη μουσικής στη σειρά αναπαραγωγής"
+
+#: C/play-queue.page:28(p)
+msgid "From your music library, you will need to select the music tracks or albums you want to add to the play queue."
+msgstr "Από τη μουσική σας βιβλιοθήκη, θα χρειαστεί να επιλέξετε τα κομμάτια ή τους δίσκους που θέλετε να προσθέσετε στη σειρά αναπαραγωγής."
+
+#: C/play-queue.page:32(p)
+msgid "To add an entire album to the Play Queue, using your mouse press and hold the album and drag the album over <gui>Play Queue</gui> in the far left window pane."
+msgstr "Για να προσθέσετε έναν ολόκληρο δίσκο στη σειρά αναπαραγωγής, με το ποντίκι σύρετε το δίσκο πάνω από τη <gui>σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου."
+
+#: C/play-queue.page:37(p)
+msgid "You can add music tracks to the Play Queue individually or as a group. To add an individual file, drag and drop it over the <gui>Play Queue</gui> in the far left window pane, or right click the track and choose <gui>Add to Play Queue</gui>."
+msgstr "Μπορείτε να προσθέσετε μουσικά κομμάτια στη σειρά αναπαραγωγής μεμονωμένα ή ως ομάδα. Για να προσθέσετε ένα μεμονωμένο αρχείο, σύρετε και αφήστε το πάνω στη <gui>Σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου ή κάντε δεξί κλικ στο κομμάτι και επιλέξτε <gui>Προσθήκη στη σειρά αναπαραγωγής</gui>."
+
+#: C/play-queue.page:43(p)
+msgid "You can select multiple files by using your mouse and pressing <key>Control</key> and choosing each file with your mouse or select a range of files by pressing <key>Shift</key> twice to select that range of files. You can then drag and drop it over the <gui>Play Queue</gui> in the far left window pane or right click the tracks and choose <gui>Add to Play Queue</gui>."
+msgstr "Μπορείτε να επιλέξετε πολλαπλά αρχεία με το ποντίκι και πατώντας το <key>Control</key> και επιλέγοντας κάθε αρχείο με το ποντίκι σας ή επιλέγοντας μια σειρά αρχείων πατώντας δυο φορές το <key>Shift</key> για να τα επιλέξετε. Μπορείτε μετά να σύρετε και να τα αφήσετε πάνω στη <gui>Σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου ή να κάνετε δεξί κλικ στα κομμάτια και να επιλέξτε <gui>Προσθήκη στη σειρά αναπαραγωγής</gui>."
+
+#: C/play-queue.page:56(title)
+msgid "Organize Your Play Queue"
+msgstr "Οργάνωση της σειράς αναπαραγωγής σας"
+
+#: C/play-queue.page:58(p)
+msgid "Your Play Queue is organized in the order of the tracks you added. The first tracks or albums you added to the queue will be the first to be played. You can re-order your Play Queue by using your mouse and dragging and dropping a track or group of tracks in the list. Choose the track(s) you wish to re-order with your mouse and release your mouse over the number or place in the list you wish those files to be in the queue."
+msgstr "Η σειρά αναπαραγωγής σας οργανώνεται με τη σειρά που προσθέσατε τα κομμάτια. Τα πρώτα κομμάτια ή δίσκοι που προσθέσατε θα αναπαραχθούν πρώτα. Μπορείτε να επαναδιατάξετε τη σειρά αναπαραγωγής με το ποντίκι, σύροντας και αφήνοντας ένα κομμάτι ή ομάδα κομματιών στη λίστα. Επιλέξτε το κομμάτι(α) που θέλετε να επαναδιατάξετε με το ποντίκι σας και αφήστε το κουμπί του ποντικιού πάνω από τον αριθμό ή θέση της λίστας που θέλετε να τοποθετηθούν αυτά τα αρχεία."
+
+#: C/play-queue.page:70(title)
+msgid "Removing Tracks from the Play Queue"
+msgstr "Αφαίρεση κομματιών από τη σειρά αναπαραγωγής"
+
+#: C/play-queue.page:72(p)
+msgid "You can remove an individual track, a group of tracks, or clear your entire play queue."
+msgstr "Μπορείτε να αφαιρέσετε ένα μεμονωμένο κομμάτι, μια ομάδα κομματιών ή να εκκαθαρίσετε όλη τη σειρά αναπαραγωγής."
+
+#: C/play-queue.page:76(p)
+msgid "To remove an individual track or group of tracks, select the track with your mouse and then press <key>Delete</key>."
+msgstr "Για να αφαιρέσετε ένα μεμονωμένο κομμάτι ή ομάδα κομματιών, επιλέξτε το κομμάτι με το ποντίκι σας και πατήστε <key>Delete</key>."
+
+#: C/play-queue.page:80(p)
+msgid "To clear your entire Play Queue, press the <gui>Clear</gui> button in the upper right hand corner of the Play Queue."
+msgstr "Για να εκκαθαρίσετε όλη τη σειρά αναπαραγωγής σας, πατήστε το κουμπί <gui>Εκκαθάριση</gui> στην πάνω δεξιά γωνία της σειράς αναπαραγωγής."
+
+#: C/manage-tags.page:10(desc)
+msgid "Edit and change music tags and metadata."
+msgstr "Επεξεργασία και αλλαγή ετικετών μουσικής και μεταδεδομένων."
+
+#: C/manage-tags.page:25(title)
+msgid "Music Metadata"
+msgstr "Μεταδεδομένα μουσικής"
+
+#: C/manage-tags.page:29(title)
+msgid "Music metadata"
+msgstr "Μεταδεδομένα μουσικής"
+
+#: C/manage-tags.page:31(p)
+msgid "Digital music contains metadata that stores information in the music file including the artist, album, year recorded, genre, and more. Almost all music purchased over the internet will have the metadata already embedded and if you import music from CDs, Banshee will include the metadata when ripping the CD if available. For more information on ripping CDs and including the metadata see the <link xref=\"import\"/>."
+msgstr "Η ψηφιακή μουσική περιέχει μεταδεδομένα που αποθηκεύουν πληροφορίες στο μουσικό αρχείο που περιλαμβάνουν τον καλλιτέχνη, το δίσκο, το έτος ηχογράφησης, το είδος και άλλα. Σχεδόν όλη η μουσική που αγοράζεται μέσω διαδικτύου θα έχει ήδη ενσωματωμένα τα μεταδεδομένα και αν εισάγετε μουσική από CD, το Banshee θα συμπεριλάβει τα μεταδεδομένα κατά την εξαγωγή από το CD, αν είναι διαθέσιμα. Για περισσότερες πληροφορίες για την εξαγωγή CD και την συμπερίληψη μεταδεδομένων δείτε την <link xref=\"εισαγωγή\"/>."
+
+#: C/manage-tags.page:39(p)
+msgid "Popular metadata formats are ID3v1 and ID3v2 for MP3 files and Vorbis comments for OGG Vorbis files."
+msgstr "Δημοφιλείς μορφές μεταδεδομένων είναι οι ID3v1 και ID3v2 για αρχεία MP3 και τα σχόλια Vorbis για αρχεία OGG Vorbis."
+
+#: C/manage-tags.page:42(p)
+msgid "If you have imported songs that do not contain metadata, <app>Banshee</app> will display <gui>Unknown</gui> for most fields in the library."
+msgstr "Αν έχετε εισαγάγει τραγούδια που δεν περιέχουν μεταδεδομένα, το <app>Banshee</app> θα εμφανίσει <gui>Άγνωστο</gui> στα περισσότερα πεδία στη βιβλιοθήκη."
+
+#: C/manage-tags.page:50(title)
+msgid "Edit Your Metadata"
+msgstr "Επεξεργασία μεταδεδομένων"
+
+#: C/manage-tags.page:52(p)
+msgid "You can change and edit the metadata of your songs. Select the song or songs you want to update and hit the <key>E</key>, choose <guiseq><gui>Edit</gui><gui>Edit Track Information</gui></guiseq> from the menu, or use your mouse and right click on the files and select <gui>Edit Track Information</gui>."
+msgstr "Μπορείτε να αλλάξετε και να επεξεργασθείτε τα μεταδεδομένα των τραγουδιών σας. Επιλέξτε το τραγούδι ή τα τραγούδια που θέλετε να ενημερώσετε και πατήστε το <key>E</key>, επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Επεξεργασία πληροφοριών κομματιού</gui></guiseq> από το μενού ή κάντε δεξί κλικ στα αρχεία και επιλέξτε <gui>Επεξεργασία πληροφοριών κομματιού</gui>."
+
+#: C/manage-tags.page:59(p)
+msgid "A dialog box will appear that shows the song's metadata and allow you to change or update it. The default fields displayed include:"
+msgstr "Θα εμφανιστεί ένα παράθυρο διαλόγου που εμφανίζει τα μεταδεδομένα του τραγουδιού και σας επιτρέπει να τα αλλάξετε ή να τα ενημερώσετε. Τα προεπιλεγμένα πεδία που εμφανίζονται περιλαμβάνουν:"
+
+#: C/manage-tags.page:63(gui)
+msgid "Track Title:"
+msgstr "Τίτλος κομματιού:"
+
+#: C/manage-tags.page:64(gui)
+msgid "Track Artist"
+msgstr "Καλλιτέχνης κομματιού"
+
+#: C/manage-tags.page:65(gui)
+msgid "Album Title"
+msgstr "Τίτλος δίσκου"
+
+#: C/manage-tags.page:66(gui)
+msgid "Genre"
+msgstr "Είδος"
+
+#: C/manage-tags.page:67(gui)
+msgid "Track Number"
+msgstr "Αριθμός κομματιού"
+
+#: C/manage-tags.page:68(gui)
+msgid "Disc Number"
+msgstr "Αριθμός δίσκου"
+
+#: C/manage-tags.page:69(gui)
+#: C/manage-playlists.page:109(gui)
+msgid "Year"
+msgstr "Έτος"
+
+#: C/manage-tags.page:72(p)
+msgid "Update the song's information. If you have selected multiple songs to edit press the right arrow icon to the right of the <gui>Track Title</gui> field or press the <gui>Forward</gui> button at the bottom of the dialog when finished with each song. When you have completed editing all metadata, press <gui>Save</gui>."
+msgstr "Ενημερώστε τις πληροφορίες τραγουδιού. Αν έχετε επιλέξει πολλαπλά τραγούδια για επεξεργασία, πατήστε το εικονίδιο με το δεξί βέλος στα δεξιά του πεδίου <gui>Τίτλος κομματιού</gui> ή πατήστε το κουμπί <gui>Μπροστά</gui> στο κάτω μέρος του διαλόγου όταν τελειώνετε με κάθε τραγούδι. Όταν έχετε επεξεργασθεί όλα τα μεταδεδομένα, πατήστε <gui>Αποθήκευση</gui>."
+
+#: C/manage-playlists.page:10(desc)
+msgid "Create and manage playlists."
+msgstr "Δημιουργία και διαχείριση λιστών αναπαραγωγής."
+
+#: C/manage-playlists.page:19(title)
+msgid "Playlists"
+msgstr "Λίστες αναπαραγωγής"
+
+#: C/manage-playlists.page:21(p)
+msgid "Playlists allow you to create and save a list of music tracks to be played in a specific order. Playlists are convenient to create a list of your favorite songs or to split your library into smaller lists that are easy to browse through. Some portable media players even allow you to transfer the playlist so you can take it with you on the go."
+msgstr "Οι λίστες αναπαραγωγής σας επιτρέπουν να δημιουργήσετε και να αποθηκεύσετε μια λίστα μουσικών κομματιών για να αναπαραχθούν με συγκεκριμένη σειρά. Οι λίστες αναπαραγωγής είναι ένας βολικός τρόπος για τη δημιουργία μιας λίστας με τα αγαπημένα σας τραγούδια ή για να χωρίσετε τη βιβλιοθήκη σας σε μικρότερες λίστες στις οποίες είναι εύκολο να περιηγηθείτε. Μερικές φορητές συσκευές αναπαραγωγής σας επιτρέπουν ακόμα και να μεταφέρετε τη λίστα αναπαραγωγής ώστε να μπορείτε να την πάρετε μαζί σας."
+
+#: C/manage-playlists.page:28(p)
+msgid "Banshee supports normal playlists, which include songs you add to the playlist, as well as smart playlists. Smart Playlists are automatically generated playlists based on your listening habits, favorite music, or more."
+msgstr "Το Banshee υποστηρίζει κανονικές λίστες αναπαραγωγής, που περιλαμβάνουν τραγούδια που προσθέτετε στη λίστα αναπαραγωγής καθώς και έξυπνες λίστες αναπαραγωγής. Οι έξυπνες λίστες αναπαραγωγής δημιουργούν αυτόματα λίστες αναπαραγωγής βασισμένες στις συνήθειές σας ακρόασης, στην αγαπημένη σας μουσική και άλλα."
+
+#: C/manage-playlists.page:34(title)
+msgid "Normal Playlists"
+msgstr "Κανονικές λίστες αναπαραγωγής"
+
+#: C/manage-playlists.page:36(p)
+msgid "A normal playlist is a list of songs that you add and manage. You might want to create your own list of songs by your favorite artist from multiple albums, your latest favorite songs, or an upbeat playlist to listen to while you exercise."
+msgstr "Μια κανονική λίστα αναπαραγωγής είναι μια λίστα τραγουδιών που έχετε προσθέσει και διαχειρίζεστε. Μπορεί να θέλετε να δημιουργήσετε τη δική σας λίστα τραγουδιών από τον αγαπημένο σας καλλιτέχνη από πολλαπλούς δίσκους ή μια λίστα με έντονο ρυθμό για να ακούτε όσο ασκείστε."
+
+#: C/manage-playlists.page:42(p)
+msgid "You can create a new playlist by pressing <keyseq><key>Control</key><key>N</key></keyseq>, from the menu choosing <guiseq><gui>Menu</gui><gui>New Playlist</gui></guiseq> or by selecing the track(s) you would like to add to the playlist. Select the track(s), right click them, and choose <guiseq><gui>Add to Playlist</gui><gui>New Playlist</gui></guiseq>. You can also drag and drop them to a new playlist by selcting the track(s) and dragging them to the left hand window pane over <gui>Music</gui>. As you drag it over <gui>Music</gui>, a new option <gui><em>New Playlist</em></gui> will appear and you can drop the track(s) over <gui><em>New Playlist</em></gui> to add them to the playlist. You can repeat this process until you have added all the tracks you want in the playlist."
+msgstr "Μπορείτε να δημιουργήσετε μια νέα λίστα αναπαραγωγής πατώντας <keyseq><key>Control</key><key>N</key></keyseq>, από το μενού επιλέγοντας <guiseq><gui>Μενού</gui><gui>Νέα λίστα αναπαραγωγής</gui></guiseq> ή επιλέγοντας τα κομμάτια που θέλετε να προσθέσετε στη λίστα αναπαραγωγής. Επιλέξτε τα κομμάτια, κάντε δεξί κλικ και επιλέξτε <guiseq><gui>Προσθήκη στη λίστα αναπαραγωγής</gui><gui>Νέα λίστα αναπαραγωγής</gui></guiseq>. Μπορείτε επίσης να σύρετε και να τα αφήσετε σε μια νέα λίστα αναπαραγωγής επιλέγοντας τα κομμάτια και σύροντάς τα στο αριστερό πλαίσιο πάνω από το <gui>Μουσική</gui>. Καθώς τα σύρετε πάνω από το <gui>Μουσική</gui>, θα εμφανισθεί μια νέα επιλογή <gui><em>Νέα λίστα αναπαραγωγής</em></gui> και μπορείτε να αφήσετε τα κομμάτια πάνω από αυτή για να προσθέσετε στη λίστα αναπαραγωγής. Μπορείτε να επαναλάβετε αυτή τη διαδικασία μέχρι να προσθέσετε όλα τα κομμάτια που θέλετε στη λίστα αναπαραγωγής."
+
+#: C/manage-playlists.page:56(p)
+msgid "To give your playlist its own name, select the playlist and right click on the playlist and press <gui>Rename Playlist</gui> and enter the name of your playlist."
+msgstr "Για να δώσετε στη λίστα αναπαραγωγής όνομα, επιλέξτε τη, κάντε δεξί κλικ σε αυτή, πατήστε <gui>Μετονομασία λίστας αναπαραγωγής</gui> και εισάγετε το όνομα της λίστας."
+
+#: C/manage-playlists.page:61(p)
+msgid "You can change the order of the playlist by dragging and dropping the song to the new position in the playlist. Songs can only be re-ordered in the playlist when none of the columns are sorted. To unsort a column, press the column until the up or down arrow is no longer showing and the column is blank and then re-order the playlist."
+msgstr "Μπορείτε να αλλάξετε τη σειρά στη λίστα αναπαραγωγής σύροντας τα τραγούδια στη νέα θέση τους στη λίστα. Τα τραγούδια μπορούν να επαναδιαταχθούν στη λίστα μόνο όταν καμία στήλη δεν είναι ταξινομημένη. Για να αποταξινομήσετε μια στήλη, κάντε κλικ πάνω της μέχρι να μην εμφανίζεται πάνω ή κάτω βέλος και η στήλη να είναι κενή και μετά επαναδιατάξτε τη λίστα αναπαραγωγής."
+
+#: C/manage-playlists.page:68(p)
+msgid "To remove a track from the playlist, select the track(s) you wish to remove. Press the <key>Delete</key>, from the menu choose <guiseq><gui>Edit</gui><gui>Remove from Playlist</gui></guiseq> or right click the track(s) with your mouse and press <gui>Remove from Playlist</gui>."
+msgstr "Για να αφαιρέσετε ένα κομμάτι από τη λίστα αναπαραγωγής, επιλέξτε τα κομμάτια που θέλετε να αφαιρέσετε. Πατήστε το <key>Delete</key>, επιλέξτε από το μενού <guiseq><gui>Επεξεργασία</gui><gui>Αφαίρεση από τη λίστα αναπαραγωγής</gui></guiseq> ή κάντε δεξί κλικ στο κομμάτι(α) με το ποντίκι σας και πατήστε <gui>Αφαίρεση από τη λίστα αναπαραγωγής</gui>."
+
+#: C/manage-playlists.page:76(title)
+msgid "Smart Playlist"
+msgstr "Έξυπνη λίστα αναπαραγωγής"
+
+#: C/manage-playlists.page:78(p)
+msgid "Smart Playlists allow you to quickly generate a dynamic playlist based on a number of pre-set variables. You can quickly create a new playlist based on a specific artist, favorites or more."
+msgstr "Οι έξυπνες λίστες αναπαραγωγής σας επιτρέπουν να δημιουργήσετε γρήγορα μια δυναμική λίστα βασισμένη σε ένα αριθμό προκαθορισμένων μεταβλητών. Μπορεί να δημιουργήσετε γρήγορα μια νέα λίστα αναπαραγωγής βασισμένη σε ένα καλλιτέχνη, σε αγαπημένα και άλλα."
+
+#: C/manage-playlists.page:83(p)
+msgid "To create a new Smart Playlist, from the menu choose <guiseq><gui>Media</gui><gui>New Smart Playlist</gui></guiseq>. You will be presented with a dialog to create a new Smart Playlist. Enter the name of your playlist and then choose the criteria your playlist should be based on. You can choose from any field included in the song's meatadata, such as Album, Artist or Year. Choose the criteria and then choose from one of the following:"
+msgstr "Για να δημιουργήσετε μια έξυπνη λίστα αναπαραγωγής, από το μενού επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Νέα έξυνπη λίστα αναπαραγωγής</gui></guiseq>. Θα εμφανιστεί ένας διάλογος για δημιουργία νέας έξυπνης λίστας αναπαραγωγής. Εισάγετε το όνομα της λίστας αναπαραγωγής σας και μετά επιλέξτε τα κριτήρια στα οποία θα βασίζεται η λίστα σας. Μπορεί να επιλέξετε από οποιοδήποτε πεδίο περιλαμβάνεται στα μεταδεδομένα του τραγουδιού, όπως Δίσκος, Καλλιτέχνης ή Έτος. Επιλέξτε τα κριτήρια και μετά επιλέξτε ένα από τα ακόλουθα:"
+
+#: C/manage-playlists.page:93(p)
+#: C/manage-playlists.page:109(gui)
+#: C/manage-playlists.page:113(gui)
+msgid "is"
+msgstr "είναι"
+
+#: C/manage-playlists.page:94(p)
+msgid "is not"
+msgstr "δεν είναι"
+
+#: C/manage-playlists.page:95(p)
+msgid "less than"
+msgstr "λιγότερο από"
+
+#: C/manage-playlists.page:96(p)
+msgid "more than"
+msgstr "περισσότερο από"
+
+#: C/manage-playlists.page:97(p)
+msgid "at most"
+msgstr "το πολύ"
+
+#: C/manage-playlists.page:98(p)
+msgid "at least"
+msgstr "τουλάχιστον"
+
+#: C/manage-playlists.page:101(p)
+msgid "You can also press the <gui>+</gui> button to add an addition query to the Smart Playlist. For example, you could create a smart playlist that includes all songs from 2010 that you rated 5 stars. To create this playlist you would choose:"
+msgstr "Μπορείτε επίσης να πατήσετε το κουμπί <gui>+</gui> για να προσθέσετε ένα ερώτημα προσθήκης στην έξυπνη λίστα αναπαραγωγής σας. Παραδείγματος χάριν, θα μπορούσατε να δημιουργήσετε μια έξυπνη λίστα αναπαραγωγής που περιλαμβάνει όλα τα τραγούδια από το 2010 που βαθμολογήσατε με 5 αστέρια. Για να δημιουργήσετε αυτή τη λίστα θα επιλέγατε:"
+
+#: C/manage-playlists.page:110(gui)
+msgid "2010"
+msgstr "2010"
+
+#: C/manage-playlists.page:113(gui)
+msgid "Rating"
+msgstr "Βαθμολογία"
+
+#: C/manage-playlists.page:114(p)
+msgid "<gui/>5 stars"
+msgstr "<gui/>5 αστέρια"
+
+#: C/manage-playlists.page:118(p)
+msgid "You can then optionally select how many songs are included by pressing the <gui>Limit</gui> to checkbox and choosing the number of songs to be included."
+msgstr "Μπορείτε τότε προαιρετικά να επιλέξετε πόσα τραγούδια περιλαμβάνονται πατώντας το <gui>Περιορισμός</gui> στο πεδίο επιλογής και επιλέγοντας τον αριθμό των τραγουδιών που θα περιληφθούν."
+
+#: C/manage-playlists.page:123(p)
+msgid "Banshee also includes smart playlists already created for you. Press the <gui>Open in editor</gui> button to view how the playlist created was or to modify it. If you press <gui>Create and save</gui> the playlist will be automatically generated and saved for you. The following playlists are included:"
+msgstr "Το Banshee περιλαμβάνει επίσης έξυπνες λίστες αναπαραγωγής που έχουν δημιουργηθεί για εσάς. Πατήστε το κουμπί <gui>Άνοιγμα στον επεξεργαστή</gui> για να δείτε πως δημιουργήθηκε η λίστα αναπαραγωγής ή για να την τροποποιήσετε. Αν πατήσετε <gui>Δημιουργία και αποθήκευση</gui> η λίστα θα δημιουργηθεί αυτόματα και θα αποθηκευτεί. Περιλαμβάνονται οι ακόλουθες λίστες αναπαραγωγής:"
+
+#: C/manage-playlists.page:131(title)
+msgid "Banshee Smart Playlists"
+msgstr "Έξυπνες λίστες αναπαραγωγής του Banshee"
+
+#: C/manage-playlists.page:132(p)
+msgid "Favorites (Songs rated four and five stars)"
+msgstr "Αγαπημένα (τραγούδια με 4 και 5 αστέρια)"
+
+#: C/manage-playlists.page:133(p)
+msgid "Recent Favorites (Songs listened to often in the past week)"
+msgstr "Πρόσφατα αγαπημένα (τραγούδια που ακούστηκαν συχνά την προηγούμενη εβδομάδα)"
+
+#: C/manage-playlists.page:135(p)
+msgid "Recently Added (Songs imported within the last week"
+msgstr "Πρόσφατες προσθήκες (τραγούδια που εισήχθησαν εντός της προηγούμενης εβδομάδας)"
+
+#: C/manage-playlists.page:136(p)
+msgid "Unheard (Songs that have not been played or skipped)"
+msgstr "Δεν έχουν ακουστεί (τραγούδια που δεν έχουν αναπαραχθεί ή παραβλεφθεί)"
+
+#: C/manage-playlists.page:137(p)
+msgid "Neglected Favorites (Favorites not played in over two months)"
+msgstr "Παραμελημένα αγαπημένα (αγαπημένα που δεν έχουν παιχθεί για πάνω από δύο μήνες)"
+
+#: C/manage-playlists.page:139(p)
+msgid "700 MB of Favorites (A data CD worth of favorite songs)"
+msgstr "700 MB αγαπημένων (ένα CD δεδομένων γεμάτο με αγαπημένα τραγούδια)"
+
+#: C/manage-playlists.page:140(p)
+msgid "80 Minutes of Favorites (An audio CD worth of favorite songs)"
+msgstr "80 λεπτά αγαπημένων (ένα CD ήχου γεμάτο με αγαπημένα τραγούδια)"
+
+#: C/manage-playlists.page:142(p)
+msgid "Unrated (Songs that haven't been rated)"
+msgstr "Χωρίς βαθμολογία (τραγούδια που δεν έχουν αξιολογηθεί)"
+
+#: C/manage-coverart.page:9(desc)
+msgid "Manage or change your albums cover art."
+msgstr "Διαχείριση ή αλλαγή των εξωφύλλων των δίσκων σας."
+
+#: C/manage-coverart.page:24(title)
+msgid "Cover art"
+msgstr "Εξώφυλλο"
+
+#: C/lastfm.page:9(desc)
+msgid "Enable Last.fm, song reporting and Last.fm radio."
+msgstr "Ενεργοποιήστε το Last.fm, αναφορά τραγουδιών και το ραδιόφωνο του Last.fm."
+
+#: C/lastfm.page:24(title)
+msgid "Last.fm"
+msgstr "Last.fm"
+
+#: C/lastfm.page:26(p)
+msgid "Last.fm is a popular online service that offers both free and paid versions. Last.fm offers information on music artists and albums and if you create a user profile Last.fm allows you to track the music you listen to in Banshee for free. If you suscribe as a paying member, you can also listen to streaming music from Last.fm in various music clients, including Banshee. Last.fm offers multiple channels to stream, including recommended music for you based on your listening habits, your favorites and more."
+msgstr "Το Last.fm είναι μια δημοφιλής δικτυακή υπηρεσία που προσφέρει τόσο δωρεάν όσο και επί πληρωμή υπηρεσίες. Το Last.fm προσφέρει πληροφορίες για καλλιτέχνες της μουσικής και δίσκους και αν δημιουργήσετε ένα προφίλ χρήστη, το Last.fm σας επιτρέπει να παρακολουθείτε τη μουσική που ακούτε στο Banshee δωρεάν. Αν γίνετε επί πληρωμή συνδρομητής, μπορείτε επίσης να ακούτε ροές μουσικής από το Last.fm σε διάφορους πελάτες μουσικής, περιλαμβανομένου του Banshee. Το Last.fm προσφέρει πολλαπλά κανάλια για ροές, περιλαμβανομένης προτεινόμενης μουσικής για εσάς με βάση τις συνήθειες ακρόασής σας, τα αγαπημένα σας και άλλα."
+
+#: C/lastfm.page:35(title)
+msgid "Enable Last.fm"
+msgstr "Ενεργοποίηση Last.fm"
+
+#: C/lastfm.page:36(p)
+msgid "To get the most out of Last.fm, you will want to create a Last.fm profile. Visit <link href=\"http://www.last.fm/join\">http://www.last.fm/join</link> to create an account or choose <guiseq><gui>Edit</gui><gui>Preferences</gui></guiseq> from the Banshee menu. Then press the <gui>Source Specific</gui> tab and press the <gui>Source</gui> drop down menu and choose <gui>Last.fm</gui> and select the <em>Sign up for Last.fm</em> link."
+msgstr "Για να αξιοποιήσετε καλύτερα το Last.fm, θα πρέπει να δημιουργήσετε ένα προφίλ. Επισκεφθείτε το <link href=\"http://www.last.fm/join\">http://www.last.fm/join</link> για να δημιουργήσετε ένα λογαριασμό ή επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Προτιμήσεις</gui></guiseq> από το μενού του Banshee. Μετά πατήστε την καρτέλα <gui>Για συγκεκριμένη πηγή</gui> και πατήστε το αναπτυσσόμενο μενού <gui>Πηγή</gui>, επιλέξτε <gui>Last.fm</gui> και επιλέξτε <em>Εγγραφή στο Last.fm</em>."
+
+#: C/lastfm.page:45(p)
+msgid "To enable Banshee to report the songs you play on your computer to Last.fm, sign in to Last.fm in Banshee in the <gui>Source Specific</gui> preferences. Enter your username and press the <gui>Log in to Last.fm</gui> button. You will be directed to a Last.fm webpage in your browser to grant Banshee access. Press the <gui>Yes, allow access</gui> link in your browser and you will be redirected to a webpage that displays a message that Banshee now has access to Last.fm. Return to Banshee and press the <gui>Finish Logging In</gui> button to complete the process."
+msgstr "Για να μπορεί το Banshee να αναφέρει τα τραγούδια που αναπαράγετε στον υπολογιστή σας στο Last.fm, συνδεθείτε σε αυτό στο Banshee στις προτιμήσεις <gui>Συγκεκριμένης πηγής</gui>. Εισάγετε το όνομα χρήστη σας και πατήστε <gui>Σύνδεση στο Last.fm</gui>. Θα μεταφρεθείτε σε μια ιστοσελίδα του Last.fm στον περιηγητή ιστού σας για να δοθεί πρόσβαση στο Banshee. Πατήστε το σύνδεσμο <gui>Ναι, να επιτραπεί η πρόσβαση</gui> στον περιηγητή σας και θα επανακατευθυνθείτε σε μια ιστοσελίδα που εμφανίζει ένα μήνυμα ότι το Banshee έχει τώρα πρόσβαση στο Last.fm. Επιστρέψτε στο Banshee και πατήστε το κουμπί <gui>Ολοκλήρωση σύνδεσης</gui> για να ολοκληρωθεί η διαδικασία."
+
+#: C/lastfm.page:58(title)
+msgid "Enable Last.fm Song Reporting"
+msgstr "Ενεργοποίηση αναφοράς τραγουδιού στο Last.fm"
+
+#: C/lastfm.page:59(p)
+msgid "After you have successfully linked Banshee to your Last.fm profile, to enable Banshee to report the songs to your Last.fm profile, in the <gui>Source Specific</gui> tab in Banshee's preferences, press the <gui>Enable Song Reporting</gui> checkbox. If you have an active internet connection, Banshee will now send Last.fm information regarding the songs you play. To view your play history, visit your profile on the Last.fm website. Last.fm will automatically update your music metadata if any of your artist, song title or album information is incorrect."
+msgstr "Αφού έχετε επιτυχώς συνδέσει το Banshee με το προφίλ σας στο Last.fm, για να ενεργοποιήσετε την αναφορά τραγουδιών στο προφίλ σας του Last.fm, στην καρτέλα <gui>Συγκεκριμένη πηγή</gui> στις προτιμήσεις του Banshee, πατήστε στο πεδίο <gui>Ενεργοποίηση αναφοράς τραγουδιών</gui>. Αν έχετε ενεργή σύνδεση στο διαδίκτυο, το Banshee θα στέλνει στο Last.fm πληροφορίες σχετικά με τα τραγούδια που παίζετε. Για να προβάλετε το ιστορικό αναπαραγωγής σας, επισκεφθείτε το προφίλ σας στην ιστοσελίδα του Last.fm. Το Last.fm θα ενημερώνει αυτόματα τα μεταδεδομένα της μουσικής σας αν οι πληροφορίες για κάποιο καλλιτέχνη, τίτλο τραγουδιού ή δίσκο είναι λανθασμένες."
+
+#: C/lastfm.page:72(title)
+msgid "Listen to Last.fm Radio"
+msgstr "Ακούστε το ραδιόφωνο του Last.fm"
+
+#: C/lastfm.page:73(p)
+msgid "Last.fm radio is free for residents of the United States, United Kingdom and Germany. Residents of other countries will have to pay for a premium account with Last.fm to listen to radio. Premium members, in all countries, also receive premium radio features: listening to playlists and stations of music you've loved or tagged."
+msgstr "Το ραδιόφωνο του Last.fm είναι δωρεάν για του κατοίκους των ΗΠΑ, του Ηνωμένου Βασιλείου και της Γερμανίας. Οι κάτοικοι άλλων χωρών πρέπει να πληρώσουν για ένα λογαριασμό του Last.fm για ακούσουν ραδιόφωνο. Τα επί πληρωμή μέλη, επίσης έχουν επιπλέον χαρακτηριστικά στο ραδιόφωνο: ακρόαση λιστών αναπαραγωγής και σταθμούς μουσικής που σας αρέσουν ή έχετε επισημάνει. "
+
+#: C/lastfm.page:80(p)
+msgid "In Banshee's context menu onthe left hand side, you will now have a Last.fm section, including your Lat.fm radio stations. You will need an active internet connection to listen to Last.fm radio. Choose the radio station you wish to listen to and Banshee will communicate with Last.fm to populate songs for that radio station. Press the <gui>Play</gui> button in Banshee or <key>Spacebar</key> to start streaming a Last.fm radio station. You can also press the <gui>Next</gui> button in Banshee, <key>N</key> or choose <guiseq><gui>Playback</gui><gui>Next</gui></guiseq> to play the next song in your radio station queue."
+msgstr "Στο μενού περιεχομένου του Banshee, στην αριστερή πλευρά, θα έχετε τώρα μια ενότητα Last.fm, που περιλαμβάνει τους σταθμούς σας του Last.fm. Θα χρειαστείτε μια ενεργή σύνδεση διαδικτύου για να ακούσετε το ραδιόφωνο του Last.fm. Επιλέξτε το ραδιοφωνικό σταθμό που θέλετε να ακούσετε και το Banshee θα επικοινωνήσει με το Last.fm για να συμπληρώσει τραγούδια για αυτό το ραδιοφωνικό σταθμό. Πατήστε το κουμπί <gui>Αναπαραγωγή</gui> στο Banshee ή το <key>Spacebar</key> για να αρχίσετε τη ροή του ραδιοφωνικού σταθμού. Μπορείτε επίσης να πατήσετε το κουμπί <gui>Επόμενο</gui>, το <key>N</key> ή να επιλέξετε <guiseq><gui>Αναπαραγωγή</gui><gui>Επόμενο</gui></guiseq> για να αναπράγετε το επόμενο τραγούδι στη σειρά του ραδιοφωνικού σταθμού."
+
+#: C/keyboardshortcuts.page:7(desc)
+#: C/advanced.page:27(title)
+#: C/advanced.page:29(title)
+msgid "Keyboard Shortcuts"
+msgstr "Συντομεύσεις πληκτρολογίου"
+
+#: C/keyboardshortcuts.page:24(title)
+msgid "Control Banshee using Keyboard Shortcuts"
+msgstr "Έλεγχος του Banshee με χρήση συντομεύσεων πληκτρολογίου"
+
+#: C/keyboardshortcuts.page:28(title)
+msgid "Playback Control"
+msgstr "Έλεγχος αναπαραγωγής"
+
+#: C/keyboardshortcuts.page:32(gui)
+#: C/keyboardshortcuts.page:53(gui)
+#: C/keyboardshortcuts.page:73(gui)
+#: C/keyboardshortcuts.page:90(gui)
+#: C/keyboardshortcuts.page:107(gui)
+msgid "Key"
+msgstr "Πλήκτρο"
+
+#: C/keyboardshortcuts.page:32(gui)
+#: C/keyboardshortcuts.page:53(gui)
+#: C/keyboardshortcuts.page:73(gui)
+#: C/keyboardshortcuts.page:90(gui)
+#: C/keyboardshortcuts.page:107(gui)
+msgid "Action"
+msgstr "Ενέργεια"
+
+#: C/keyboardshortcuts.page:35(p)
+msgid "Space Bar"
+msgstr "Πλήκτρο διαστήματος"
+
+#: C/keyboardshortcuts.page:35(p)
+msgid "Play or Pause the current song"
+msgstr "Αναπαραγωγή ή παύση του τρέχοντος τραγουδιού"
+
+#: C/keyboardshortcuts.page:38(p)
+#: C/keyboardshortcuts.page:76(key)
+msgid "N"
+msgstr "N"
+
+#: C/keyboardshortcuts.page:38(p)
+msgid "Play the next song"
+msgstr "Αναπαραγωγή του επόμενου τραγουδιού"
+
+#: C/keyboardshortcuts.page:41(p)
+msgid "B"
+msgstr "B"
+
+#: C/keyboardshortcuts.page:41(p)
+msgid "Play the previous song"
+msgstr "Αναπαραγωγή του προηγούμενου τραγουδιού"
+
+#: C/keyboardshortcuts.page:49(title)
+#: C/keyboardshortcuts.page:69(title)
+msgid "Library Interaction"
+msgstr "Αλληλεπίδραση με βιβλιοθήκη"
+
+#: C/keyboardshortcuts.page:56(key)
+#: C/keyboardshortcuts.page:76(key)
+#: C/keyboardshortcuts.page:114(key)
+#: C/keyboardshortcuts.page:118(key)
+#: C/keyboardshortcuts.page:123(key)
+#: C/keyboardshortcuts.page:127(key)
+#: C/keyboardshortcuts.page:132(key)
+#: C/keyboardshortcuts.page:137(key)
+msgid "Control"
+msgstr "Έλεγχος"
+
+#: C/keyboardshortcuts.page:56(key)
+#: C/keyboardshortcuts.page:110(key)
+msgid "F"
+msgstr "F"
+
+#: C/keyboardshortcuts.page:56(p)
+msgid "Move the focus to the search box"
+msgstr "Μεταφορά της εστίασης στο πεδίο αναζήτησης"
+
+#: C/keyboardshortcuts.page:60(p)
+msgid "<key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq>"
+msgstr "<key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq>"
+
+#: C/keyboardshortcuts.page:61(p)
+msgid "Open import media dialog"
+msgstr "Άνοιγμα του διαλόγου εισαγωγής πολυμέσων"
+
+#: C/keyboardshortcuts.page:76(p)
+msgid "Create New Playlist"
+msgstr "Δημιουργία νέας λίστας αναπαραγωγής"
+
+#: C/keyboardshortcuts.page:86(title)
+#: C/add-podcast.page:26(title)
+msgid "Podcasts"
+msgstr "Φορητές εκπομπές"
+
+#: C/keyboardshortcuts.page:93(key)
+msgid "Y"
+msgstr "Y"
+
+#: C/keyboardshortcuts.page:93(p)
+msgid "Mark the selected episodes as old"
+msgstr "Σήμανση των επιλεγμένων επεισοδίων ως παλαιών"
+
+#: C/keyboardshortcuts.page:103(title)
+msgid "Interface"
+msgstr "Διεπαφή"
+
+#: C/keyboardshortcuts.page:110(p)
+msgid "Toggle full-screen mode"
+msgstr "Εναλλαγή κατάστασης πλήρους οθόνης"
+
+#: C/keyboardshortcuts.page:114(key)
+#: C/keyboardshortcuts.page:118(key)
+msgid "A"
+msgstr "A"
+
+#: C/keyboardshortcuts.page:114(p)
+msgid "Select all songs in playlist view"
+msgstr "Επιλέξτε όλα τα τραγούδια στην προβολή λίστας αναπαραγωγής"
+
+#: C/keyboardshortcuts.page:118(key)
+msgid "Shift"
+msgstr "Shift"
+
+#: C/keyboardshortcuts.page:119(p)
+msgid "Unselect all songs in playlist view"
+msgstr "Αποεπιλογή όλων των τραγουδιών στην προβολή λίστας αναπαραγωγής"
+
+#: C/keyboardshortcuts.page:123(key)
+msgid "W"
+msgstr "W"
+
+#: C/keyboardshortcuts.page:123(p)
+msgid "Hide Banshee Window (Requires Notification Area Plug-in Enabled"
+msgstr "Απόκρυψη του παραθύρου του Banshee (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)"
+
+#: C/keyboardshortcuts.page:127(key)
+msgid "Left Mouse Button"
+msgstr "Αριστερό κουμπί του ποντικιού"
+
+#: C/keyboardshortcuts.page:128(p)
+msgid "Play Previous Song (Requires Notification Area Plug-in Enabled"
+msgstr "Αναπαραγωγή προηγούμενου τραγουδιού (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)"
+
+#: C/keyboardshortcuts.page:132(key)
+msgid "Right Mouse Button"
+msgstr "Δεξί κουμπί του ποντικιού"
+
+#: C/keyboardshortcuts.page:133(p)
+msgid "Play Next Song (Requires Notification Area Plug-in Enabled"
+msgstr "Αναπαραγωγή επόμενου τραγουδιού (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)"
+
+#: C/keyboardshortcuts.page:137(key)
+msgid "Middle Mouse Button"
+msgstr "Μεσαίο κουμπί του ποντικιού"
+
+#: C/keyboardshortcuts.page:138(p)
+msgid "Toggle Play / Pause (Requires Notification Area Plug-in Enabled"
+msgstr "Εναλλαγή αναπαραγωγής / παύσης (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)"
+
+#: C/itunes-import.page:8(desc)
+msgid "Import music and categorizations from the <app>iTunes</app> media player."
+msgstr "Εισαγωγή μουσική και κατηγοριοποίησης από την εφαρμογή αναπαραγωγής πολυμέσων <app>iTunes</app>."
+
+#: C/itunes-import.page:12(title)
+msgid "Import your <app>iTunes</app> library"
+msgstr "Εισαγωγή της βιβλιοθήκης σας του <app>iTunes</app>"
+
+#: C/introduction.page:8(desc)
+msgid "Introduction to the <app>Banshee Media Player</app>."
+msgstr "Εισαγωγή στην <app>Αναπαραγωγή πολυμέσων Banshee</app>."
+
+#: C/introduction.page:24(title)
+msgid "Introduction"
+msgstr "Εισαγωγή"
+
+#: C/introduction.page:26(p)
+msgid "<app>Banshee</app> is a media player that allows you to play your music, videos, and other media media as well sync it with portable devices to take your media on the go."
+msgstr "Το <app>Banshee</app> είναι μια εφαρμογή αναπαραγωγής πολυμέσων που σας επιτρέπει να αναπαράγετε τη μουσική σας, τα βίντεό σας και άλλα πολυμέσα καθώς και να τα συγχρονίζετε με άλλες φορητές συσκευές για να τα έχετε μαζί σας."
+
+#: C/introduction.page:31(p)
+msgid "<app>Banshee</app> includes features to import your media, manage its metadata, and play your music and videos."
+msgstr "Το <app>Banshee</app> περιλαμβάνει λειτουργίες εισαγωγής των πολυμέσων σας, διαχείρισης των μεταδεδομένων τους και αναπαραγωγής της μουσικής και των βίντεό σας."
+
+#: C/introduction.page:35(p)
+msgid "Banshee also helps you sync your music and videos to popular portable devices, such as digital audio players and smartphones. Banshee supports popular devices including most iPods, Sandisk and Creative MP3 players, and Android powered phones."
+msgstr "Το Banshee σας βοηθά επίσης να συγχρονίσετε τη μουσική και τα βίντεό σας με δημοφιλείς φορητές συσκευές, όπως αναπαραγωγείς ψηφιακής μουσικής και έξυνπα κινητά. Το Banshee υποστηρίζει δημοφιλείς συσκευές περιλαμβανομένων των περισσότερων iPod, τους αναπαραγωγείς MP3 της Sandisk και της Creative και κινητά με λειτουργικό Android."
+
+#: C/index.page:24(title)
+msgid "Add, Remove & Play"
+msgstr "Προσθήκη, Αφαίρεση & Αναπαραγωγή"
+
+#: C/index.page:28(title)
+msgid "Manage & Sort"
+msgstr "Διαχείριση & Ταξινόμηση"
+
+#: C/index.page:32(title)
+msgid "Sync your media with a portable music player"
+msgstr "Συγχρονισμός των πολυμέσων σας με φορητή συσκευή μουσικής"
+
+#: C/index.page:36(title)
+msgid "Add additional functionality to Banshee"
+msgstr "Προσθήκη επιπλέον λειτουργιών στο Banshee"
+
+#: C/index.page:40(title)
+msgid "Advanced options and help"
+msgstr "Προχωρημένες επιλογές και βοήθεια"
+
+#: C/index.page:44(title)
+msgid "Common Problems"
+msgstr "Συνήθη προβλήματα"
+
+#: C/import.page:8(desc)
+msgid "Add music and videos from your computer to your Banshee library."
+msgstr "Προσθήκη μουσικής και βίντεο από τον υπολογιστή σας στη βιβλιοθήκη σας του Banshee."
+
+#: C/import.page:15(name)
+msgid "Shaun McCance"
+msgstr "Shaun McCance"
+
+#: C/import.page:16(email)
+msgid "shaunm at gnome.org"
+msgstr "shaunm at gnome.org"
+
+#: C/import.page:21(title)
+msgid "Import music & videos"
+msgstr "Εισαγωγή μουσικής & βίντεο"
+
+#: C/import.page:23(p)
+msgid "You can import music and videos stored on your computer into Banshee. Imported files appear in your sources and can be edited and managed like any other media in Banshee."
+msgstr "Μπορείτε να εισάγετε μουσική και βίντεο αποθηκευμένα στον υπολογιστή σας στο Banshee. Τα εισαχθέντα αρχεία εμφανίζονται στις πηγές σας και μπορείτε να τα επεξεργασθείτε και να τα διαχειριστείτε σαν οποιοδήποτε άλλο μέσο στο Banshee."
+
+#: C/import.page:27(p)
+msgid "To import music or video files on your computer, choose <guiseq><gui>Media</gui><gui>Import Media</gui></guiseq>. A dialog will appear with a number of choices."
+msgstr "Για να εισάγετε τα αρχεία σας μουσικής ή βίντεο του υπολογιστή σας, επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή πολυμέσων</gui></guiseq>. Θα εμφανισθεί ένα παράθυρο διαλόγου με έναν αριθμό επιλογών."
+
+#: C/import.page:31(p)
+msgid "Plugins may add additional import choices. See <link xref=\"#plugins\"/> below."
+msgstr "Τα πρόσθετα μπορεί να προσθέσουν επιπλέον επιλογές εισαγωγής. Δείτε το <link xref=\"#plugins\"/> παρακάτω."
+
+#: C/import.page:37(gui)
+msgid "Local Folders"
+msgstr "Τοπικοί φάκελοι"
+
+#: C/import.page:38(p)
+msgid "Choose this option to import all music and video files within a specified folder, including all subfolders. You will be prompted with a dialog to choose a folder to import from."
+msgstr "Επιλέξτε αυτή την επιλογή για να εισάγετε όλα τα αρχεία μουσικής και βίντεο του καθορισμένου φακέλου και όλων των υποφακέλων. Θα εμφανισθεί ένα παράθυρο διαλόγου για να επιλέξετε φάκελο εισαγωγής."
+
+#: C/import.page:43(gui)
+msgid "Local Files"
+msgstr "Τοπικά αρχεία"
+
+#: C/import.page:44(p)
+msgid "Choose this option to import only the specific file or files you select. You will be prompted with a dialog to choose the file or files to import."
+msgstr "Επιλέξτε αυτή την επιλογή για να εισάγετε μόνο το καθορισμένο αρχείο ή αρχεία που επιλέγετε. Θα εμφανισθεί ένας διάλογος για να επιλέξετε το αρχείο ή τα αρχεία προς εισαγωγή."
+
+#: C/import.page:49(gui)
+msgid "Home Folder"
+msgstr "Προσωπικός φάκελος"
+
+#: C/import.page:50(p)
+msgid "Choose this option to import all music and video files in your entire home folder, including files in any subfolders."
+msgstr "Επιλέξτε αυτή την επιλογή για να εισάγετε όλα τα αρχεία μουσικής και βίντεο από όλο τον προσωπικό σας φάκελο, συμπεριλαμβανομένων των αρχείων σε υποφακέλους."
+
+#: C/import.page:54(gui)
+msgid "Videos From Photos Folder"
+msgstr "Βίντεο από το φάκελο φωτογραφίες"
+
+#: C/import.page:55(p)
+msgid "Many digital cameras can take short vidoes, and photo-management applications often download these videos directly into your Photos folder. Choose this option to import any videos that have been stored in your Photos folder."
+msgstr "Πολλές ψηφιακές κάμερες μπορούν να εγγράφουν μικρά βίντεο και οι εφαρμογές διαχείρισης φωτογραφιών συχνά μεταφορτώνουν αυτά τα βίντεο απευθείας στο φάκελό σας Φωτογραφίες. Επιλέξτε αυτή την επιλογή για να εισάγετε τυχόν βίντεο που έχουν αποθηκευτεί στο φάκελο Φωτογραφίες."
+
+#: C/import.page:63(p)
+msgid "You can safely import from a folder you have already imported from without worrying about duplicate entries in your library."
+msgstr "Μπορείτε να εισάγετε με ασφάλεια από έναν φάκελο από τον οποίο έχετε ήδη κάνει εισαγωγή χωρίς να ανησυχείτε για τυχόν διπλές εγγραφές στη βιβλιοθήκη σας."
+
+#: C/import.page:68(title)
+msgid "Import from a Playlist"
+msgstr "Εισαγωγή από λίστα αναπαραγωγής"
+
+#: C/import.page:69(p)
+msgid "You can also import music from playlists. Most playlist files end in <em>m3u</em>. To import from a playlist, from the Banshee menu choose <guiseq><gui>Media</gui><gui>Import Playlist</gui></guiseq> and locate the playlist file in your folder, select it and press <gui>Import</gui>."
+msgstr "Μπορείτε επίσης να εισάγετε μουσική από λίστες αναπαραγωγής. Τα περισσότερα αρχεία λίστας αναπαραγωγής έχουν κατάληξη <em>m3u</em>. Για να εισάγετε από μια λίστα αναπαραγωγής, από το μενού του Banshee επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή λίστας αναπαραγωγής</gui></guiseq>, εντοπίστε το αρχείο της λίστας στο φάκελό σας, επιλέξτε το και πατήστε <gui>Εισαγωγή</gui>."
+
+#: C/import.page:78(title)
+msgid "Additional Import Sources"
+msgstr "Επιπλέον πηγές εισαγωγής"
+
+#: C/import.page:79(p)
+msgid "Plugins may add additional import choices. The following additional sources will be available if the appropriate plugins are enabled:"
+msgstr "Τα πρόσθετα μπορεί να προσθέσουν επιπλέον επιλογές εισαγωγής. Οι ακόλουθες επιπλέον πηγές θα είναι διαθέσιμες αν τα κατάλληλα πρόσθετα είναι ενεργοποιημένα:"
+
+#: C/extensions.page:8(desc)
+msgid "Add additional functionality to Banshee."
+msgstr "Προσθήκη επιπλέον λειτουργιών στο Banshee."
+
+#: C/extensions.page:23(title)
+msgid "Banshee Extensions"
+msgstr "Επεκτάσεις του Banshee"
+
+#: C/extensions.page:27(title)
+msgid "Official Banshee Extensions"
+msgstr "Επίσημες επεκτάσεις του Banshee"
+
+#: C/extensions.page:29(title)
+msgid "Manage extensions for Banshee"
+msgstr "Διαχείριση επεκτάσεων του Banshee"
+
+#: C/extensions.page:34(title)
+msgid "Community Banshee Extensions"
+msgstr "Επεκτάσεις από την κοινότητα για το Banshee"
+
+#: C/extensions.page:36(title)
+msgid "Add community built extensions for Banshee"
+msgstr "Προσθήκη επεκτάσεων φτιαγμένων από την κοινότητα για το Banshee"
+
+#: C/emusic.page:8(desc)
+msgid "Import music purchased from eMusic."
+msgstr "Εισαγωγή μουσικής αγορασμένης από το eMusic."
+
+#: C/emusic.page:12(title)
+msgid "Import your eMusic tracks"
+msgstr "Εισαγωγή των κομματιών σας από το eMusic"
+
+#: C/amazon.page:9(desc)
+msgid "Sync and purchase music from the Amazon MP3 Store."
+msgstr "Συγχρονισμός και αγορά μουσικής από το κατάστημα MP3 του Amazon."
+
+#: C/amazon.page:24(title)
+msgid "Amazon MP3 Store"
+msgstr "Κατάστημα Amazon MP3"
+
+#: C/amazon.page:26(p)
+msgid "Banshee supports downloading and importing music from the Amazon MP3 store. You can manually import Amazon music files, purchase music in your web browser or buy music inside of Banshee. Amazon only offers music for sale as an MP3 in certain countries and depending on your location, you may not be able to buy Amazon MP3s."
+msgstr "Το Banshee υποστηρίζει μεταφόρτωση και εισαγωγή μουσικής από το κατάστημα Amazon MP3. Μπορείτε να εισάγετε χειροκίνητα μουσικά αρχεία του Amazon, να αγοράσετε μουσική από τον περιηγητή ιστού σας ή να αγοράσετε μουσική μέσα από το Banshee. Το Amazon προσφέρει μουσική προς πώληση ως MP3 μόνο σε ορισμένες χώρες και ανάλογα με την τοποθεσία σας μπορεί να μην είναι δυνατή η αγορά MP3 από το Amazon."
+
+#: C/amazon.page:34(p)
+msgid "Banshee uses an Amazon affiliate code for all music purchases. All money made via this affiliate code is donated to the GNOME Foundation."
+msgstr "Το Banshee χρησιμοποιεί ένα κωδικό συνεργάτη για όλες τις αγορές μουσικής. Όλα τα χρήματα που συγκεντρώνονται μέσω αυτού του κωδικού δωρίζονται στο GNOME Foundation."
+
+#: C/amazon.page:40(title)
+msgid "Purchase Amazon MP3s in your web browser"
+msgstr "Αγορά MP3 από το Amazon στον περιηγητή ιστού σας"
+
+#: C/amazon.page:42(p)
+msgid "Music purchased from Amazon's MP3 store can be automatically downloaded and imported into Banshee. Banshee associates itself with the .amz file Amazon provides for MP3 purchases. When you buy music on Amazon, your web browser will download the .amz file and Banshee will automatically open it and begin the download and import the music."
+msgstr "Η μουσική που αγοράστηκε από το κατάστημα MP3 του Amazon μπορεί να μεταφορτωθεί αυτόματα και να εισαχθεί στο Banshee. Το Banshee συσχετίζεται με το αρχείο .amz που παρέχει το Amazon για αγορές MP3. Όταν αγοράζετε μουσική στο Amazon, ο περιηγητής ιστού σας θα μεταφορτώσει το αρχείο .amz και το Banshee θα το ανοίξει αυτόματα και θα αρχίσει τη μεταφόρτωση και εισαγωγή της μουσικής."
+
+#: C/amazon.page:51(title)
+msgid "Buy Amazon MP3s in Banshee"
+msgstr "Αγορά MP3 του Amazon στο Banshee"
+
+#: C/amazon.page:53(p)
+msgid "You can also search for songs on Amazon within Banshee. Choose the Amazon MP3 Store from the Banshee menu on the left. This will load the Amazon MP3 Store just as if you were in a web browser. You can search Amazon for the music you wish to buy and after logging in to Amazon, buy music with one click. Banshee will automatically download and import the your purchase into the library."
+msgstr "Μπορείτε επίσης να αναζητήσετε τραγούδια στο Amazon μέσα από το Banshee. Επιλέξτε το κατάστημα Amazon MP3 από το μενού του Banshee αριστερά. Αυτό θα φορτώσει το κατάστημα Amazon MP3 ακριβώς σαν να είσασταν σε περιηγητή ιστού. Μπορείτε να αναζητήσετε στο Amazon τη μουσική που επιθυμείτε να αγοράσετε και μετά τη σύνδεση στο Amazon, να την αγοράσετε με ένα κλικ. Το Banshee θα μεταφορτώσει και θα εισάγει αυτόματα τις αγορές σας στη βιβλιοθήκη."
+
+#: C/amazon.page:63(title)
+msgid "Import Amazon MP3s manually"
+msgstr "Εισαγωγή MP3 του Amazon χειροκίνητα"
+
+#: C/amazon.page:65(p)
+msgid "When music is purchased from Amazon in a web browser, a file with the extension .amz is downloaded and saved to your hard drive. To import music purchased manually from Amazon, in Banshee choose <guiseq><gui>Media</gui><gui>Import Media</gui></guiseq> from the menu and select the *.amz file to be imported. Banshee will then open this file and connect to the Amazon MP3 store to begin the download."
+msgstr "Όταν γίνεται αγορά μουσικής από το Amazon με περιηγητή ιστού, μεταφορτώνεται και αποθηκεύεται στον υπολογιστή σας ένα αρχείο με επέκταση .amz. Για να εισάγετε χειροκίνητα μουσική που αγοράσθηκε από το Amazon, στο μενού του Banshee επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή πολυμέσων</gui></guiseq> και επιλέξτε το αρχείο *.amz που θα εισαχθεί. Το Banshee θα ανοίξει αυτό το αρχείο και θα συνδεθεί στο κατάστημα Amazon MP3 για να ξεκινήσει τη μεταφόρτωση."
+
+#: C/amazon.page:74(p)
+msgid "Amazon .amz files are only active for a short time. If you do not download your music quickly, the file will expire and you cannot download your music from Amazon. Amazon does not publish how long files are active. It is recommended you download and import any purchases from Amazon within an hour of purchase."
+msgstr "Τα αρχεία .amz του Amazon είναι ενεργά μόνο για μικρό χρονικό διάστημα. Αν δεν μεταφορτώσετε τη μουσική σας γρήγορα, το αρχείο θα λήξει και δεν θα μπορέσετε να μεταφορτώσετε τη μουσική σας από το Amazon. Το Amazon δεν δημοσιοποιεί για πόσο χρόνο είναι ενεργά τα αρχεία. Συνίσταται να μεταφορτώσετε και να εισάγετε τυχόν αγορές σας από το Amazon εντός μίας ώρας από την αγορά."
+
+#: C/advanced.page:8(desc)
+msgid "Get help for advanced actions."
+msgstr "Βοήθεια για προχωρημένες ενέργειες"
+
+#: C/advanced.page:23(title)
+msgid "Advanced Options and Help"
+msgstr "Επιλογές για προχωρημένους και βοήθεια"
+
+#: C/add-radio.page:11(desc)
+msgid "Add, remove and play internet radio stations in Banshee."
+msgstr "Προσθήκη, αφαίρεση και αναπαραγωγή σταθμών διαδικτυακού ραδιοφώνου στο Banshee."
+
+#: C/add-radio.page:26(title)
+msgid "Internet Radio"
+msgstr "Διαδικτυακό ραδιόφωνο"
+
+#: C/add-radio.page:29(title)
+msgid "What is Internet Radio?"
+msgstr "Τι είναι το διαδικτυακό ραδιόφωνο;"
+
+#: C/add-radio.page:31(p)
+msgid "Internet radio stations are similar to regular radio stations, allowing an individual or organization to stream music live over the internet. Internet radio stations can be a simultaneous stream of a regular radio station, an amateur broadasting their own station, or commercial internet radio stations that include live DJs and even commercials."
+msgstr "Οι διαδικτυακοί ραδιοφωνικοί σταθμοί είναι παρόμοιοι με τους κανονικούς, επιτρέποντας σε ένα άτομο ή οργανισμό να μεταδώσει ζωντανά μουσική μέσω του διαδικτύου. Οι διαδικτυακοί ραδιοφωνικοί σταθμοί μπορεί να είναι μια ταυτόχρονη ροή ενός κανονικού ραδιοφωνικού σταθμού, ένας ερασιτέχνης που μεταδίδει το δικό του σταθμό ή εμπορικοί διαδικτυακοί σταθμοί με παραγωγούς, ζωντανό πρόγραμμα και διαφημίσεις."
+
+#: C/add-radio.page:41(title)
+msgid "Add Radio Station"
+msgstr "Προσθήκη ραδιοφωνικού σταθμού"
+
+#: C/add-radio.page:43(p)
+msgid "To add an internet radio station to Banshee, press <gui>Add Station</gui> in the upper right hand corner of Banshee or, from the menu, choose <guiseq><gui>Menu</gui><gui>Add Station</gui></guiseq>."
+msgstr "Για να προσθέσετε ένα ραδιοφωνικό σταθμό στο Banshee, πατήστε <gui>Προσθήκη σταθμού</gui> στην πάνω δεξιά γωνία του Banshee ή από το μενού επιλέξτε <guiseq><gui>Μενού</gui><gui>Προσθήκη σταθμού</gui></guiseq>."
+
+#: C/add-radio.page:48(p)
+msgid "From the internet radio station's webpage, copy the link to their stream URL in your web browser. In most browsers, you can right click on the link and press <gui>Copy Link</gui>."
+msgstr "Από την ιστοσελίδα του διαδικτυακού ραδιοφωνικού σταθμού, αντιγράψτε το URL της ροής του στον περιηγητή ιστού σας. Στους περισσότερους περιηγητές μπορείτε να κάνετε δεξί κλικ στο σύνδεσμο και να πατήσετε <gui>Αντιγραφή δεσμού</gui>."
+
+#: C/add-radio.page:54(p)
+msgid "Banshee will prompt you to enter the <gui>Station Genre</gui>. Choose the kind of music the internet radio station plays from the available drop down selections. You will then need to enter the <gui>Station Name</gui>. Enter a name for the radio station. Then press tab or use your mouse to select the <gui>Stream URL:</gui> dialog to paste the URL of the radio station. Using your mouse right click and choose <gui>Paste</gui> or press <keyseq><key>Control</key>+<key>V</key></keyseq>."
+msgstr "Το Banshee θα σας ζητήσει να εισάγετε το <gui>Είδος σταθμού</gui>. Επιλέξτε το είδος της μουσικής που παίζει ο σταθμός από τις διαθέσιμες επιλογές. Στη συνέχεια θα πρέπει εισάγετε το <gui>Όνομα σταθμού</gui>. Εισάγετε ένα όνομα για το σταθμό. Μετά πατήστε το tab ή με το ποντίκι σας επιλέξτε το διάλογο <gui>URL ροής:</gui> για να επικολλήσετε το URL του ραδιοφωνικού σταθμού. Με χρήση του ποντικιού σας κάντε δεξί κλικ και επιλέξτε <gui>Επικόλληση</gui> ή πατήστε <keyseq><key>Control</key>+<key>V</key></keyseq>."
+
+#: C/add-radio.page:62(p)
+msgid "You can optionally also fill out the fields for <gui>Station Creator</gui>, <gui>Description</gui>, and <gui>Rating</gui>."
+msgstr "Μπορείτε προαιρετικά να συμπληρώσετε τα πεδία για <gui>Δημιουργό σταθμού</gui>, <gui>Περιγραφή</gui> και <gui>Βαθμολογία</gui>."
+
+#: C/add-radio.page:66(p)
+msgid "Then press <gui>Save</gui> to save the internet radio station in Banshee."
+msgstr "Μετά πατήστε <gui>Αποθήκευση</gui> για να αποθηκεύσετε τον διαδικτυακό σταθμό στο Banshee."
+
+#: C/add-podcast.page:11(desc)
+msgid "Add, remove and play podcasts in Banshee."
+msgstr "Προσθήκη, αφαίρεση και αναπαραγωγή φορητών εκπομπών στο Banshee."
+
+#: C/add-podcast.page:29(title)
+msgid "What is a Podcast?"
+msgstr "Τι είναι η φορητή εκπομπή (Podcast);"
+
+#: C/add-podcast.page:31(p)
+msgid "Podcasts are recorded programs, similar to radio programs, that are available on the internet and allow you to subscribe. When you subscribe to a podcast in Banshee, each time a new program is released, Banshee will automatically download the podcast and allow you to listen to it."
+msgstr "Οι φορητές εκπομπές είναι ηχογραφημένα προγράμματα, παρόμοια με τα ραδιοφωνικά, που είναι διαθέσιμα στο διαδίκτυο και σας επιτρέπουν να γίνετε συνδρομητής. Όταν γίνετε συνδρομητής σε μια φορητή εκπομπή στο Banshee, κάθε φορά που παράγεται ένα καινούριο πρόγραμμα, το Banshee θα μεταφορτώσει αυτόματα την εκπομπή για να την ακούσετε."
+
+#: C/add-podcast.page:36(p)
+msgid "There are podcasts on almost any subject including music, movies, Linux, and more. Search the internet using your favorite search engine with a search term such as \"movie podcast\" and you will be presented with many options to choose from."
+msgstr "Υπάρχουν φορητές εκπομπές για σχεδόν κάθε θέμα, περιλαμβανομένων μουσικής, ταινιών, Linux και άλλων. Αναζητήστε στο διαδίκτυο με χρήση της αγαπημένης σας μηχανής αναζήτησης με έναν όρο αναζήτησης όπως \"movie podcast\" και θα εμφανιστούν πολλές επιλογές για να διαλέξετε."
+
+#: C/add-podcast.page:44(title)
+msgid "Add a Podcast"
+msgstr "Προσθήκη φορητής εκπομπής (podcast)"
+
+#: C/add-podcast.page:46(p)
+msgid "To add a Podcast to Banshee you will first need to visit the podcast's home page on the internet in your browser. Almost all podcasts will have a button or link displayed to subscribe to the podcast. Copy the link to the podcast's subscription. In most web browsers, you can right click on the link and choose <gui>Copy link</gui>."
+msgstr "Για να προσθέσετε μια φορητή εκπομπή στο Banshee θα χρειαστεί πρώτα να επισκεφτείτε την ιστοσελίδα της φορητής εκπομπής στο διαδίκτυο με τον περιηγητή ιστού σας. Σχεδόν όλες οι φορητές εκπομπές θα έχουν ένα κουμπί ή σύνδεσμο για να εγγραφείτε στη φορητή εκπομπή. Αντιγράψτε το δεσμό στη συνδρομή σας της φορητής εκπομπής. Στους περισσότερους περιηγητές ιστού μπορείτε να κάνετε δεξί κλικ στο δεσμό και να επιλέξετε <gui>Αντιγραφή δεσμού</gui>."
+
+#: C/add-podcast.page:53(p)
+msgid "In Banshee, press and choose <gui>Subscribe to Podcasts</gui> in the upper right hand corner, from the menu choose <guiseq><gui>Media</gui><gui> Subscribe to Podcast</gui></guiseq> or use the keyboard shortcut <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>."
+msgstr "Στο Banshee, πατήστε και επιλέξτε <gui>Συνδρομή σε φορητές εκπομπές</gui>, στην πάνω δεξιά γωνία από το μενού επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui> Συνδρομή στη φορητή εκπομπή</gui></guiseq> ή χρησιμοποιήστε τη συντόμευση πληκτρολογίου <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>."
+
+#: C/add-podcast.page:59(p)
+msgid "Banshee will then allow you to choose how you want to download new podcasts from a drop down menu. Your choices include:"
+msgstr "Το Banshee θα σας επιτρέψει τότε να επιλέξετε πως θέλετε να μεταφορτώνονται οι νέες φορητές εκπομπές από ένα αναπτυσσόμενο μενού. Οι επιλογές σας περιλαμβάνουν:"
+
+#: C/add-podcast.page:63(p)
+msgid "Download the Most Recent Episode (This will automatically download the last episode that was released)."
+msgstr "Μεταφόρτωση του πιο πρόσφατου επεισοδίου (Αυτό θα μεταφορτώσει αυτόματα το τελευταίο επεισόδιο που κυκλοφόρησε)."
+
+#: C/add-podcast.page:65(p)
+msgid "Download All Episodes (This will download all episodes)."
+msgstr "Μεταφόρτωση όλων των επεισοδίων (Αυτό θα μεταφορτώσει όλα τα επεισόδια)."
+
+#: C/add-podcast.page:66(p)
+msgid "Let Me Decide Which Episodes to Download (This will allow you to choose which episodes you would like to download)."
+msgstr "Αφήστε με να αποφασίσω ποια επεισόδια θα μεταφορτωθούν (Αυτό θα σας επιτρέψει να επιλέξετε ποια επεισόδια θα θέλατε να μεταφορτώσετε)."
+
+#: C/add-podcast.page:70(p)
+msgid "After you have added a Podcast feed, Banshee will display:"
+msgstr "Αφού προσθέσετε μια ροή φορητής εκπομπής, το Banshee θα εμφανίσει:"
+
+#: C/add-podcast.page:73(p)
+msgid "<gui>Name</gui>: (Name of the specific episode)"
+msgstr "<gui>Όνομα</gui>: (Όνομα του συγκεκριμένου επεισοδίου)"
+
+#: C/add-podcast.page:74(p)
+msgid "<gui>Podcast</gui>: (Name of the Podcast)"
+msgstr "<gui>Φορητή εκπομπή</gui>: (Όνομα της φορητής εκπομπής)"
+
+#: C/add-podcast.page:75(p)
+msgid "<gui>Published</gui> (Date the episode was published or released)"
+msgstr "<gui>Κυκλοφόρησε</gui> (Ημερομηνία κυκλοφορίας ή δημοσίευσης του επεισοδίου)"
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/index.page:0(None)
+msgid "translator-credits"
+msgstr "Michael Kotsarinis <mk73628 at gmail.com>, 2010"
+
diff --git a/help/el/emusic.page b/help/el/emusic.page
new file mode 100644
index 0000000..8a36e8f
--- /dev/null
+++ b/help/el/emusic.page
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="emusic-import">
+
+  <info>
+    <link type="guide" xref="import#plugins"/>
+    <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
+    <desc>Εισαγωγή μουσικής αγορασμένης από το eMusic.</desc>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισαγωγή των κομματιών σας από το eMusic</title>
+
+</page>
diff --git a/help/el/extensions.page b/help/el/extensions.page
new file mode 100644
index 0000000..e9e6454
--- /dev/null
+++ b/help/el/extensions.page
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="guide" style="2column" id="extend">
+
+  <info>
+    <link type="guide" xref="index#extensions"/>
+    <desc>Προσθήκη επιπλέον λειτουργιών στο Banshee.</desc>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--    
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->    
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Επεκτάσεις του Banshee</title>
+
+  <section id="official" style="2column">
+    <info>
+      <title type="link">Επίσημες επεκτάσεις του Banshee</title>
+    </info>
+    <title>Διαχείριση επεκτάσεων του Banshee</title>
+  </section>
+
+  <section id="community" style="2column">
+    <info>
+      <title type="link">Επεκτάσεις από την κοινότητα για το Banshee</title>
+    </info>
+    <title>Προσθήκη επεκτάσεων φτιαγμένων από την κοινότητα για το Banshee</title>
+  </section>
+
+
+</page>
diff --git a/help/el/import.page b/help/el/import.page
new file mode 100644
index 0000000..7998fc6
--- /dev/null
+++ b/help/el/import.page
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="guide" style="task" id="import">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="remove-media"/>
+    <desc>Προσθήκη μουσικής και βίντεο από τον υπολογιστή σας στη βιβλιοθήκη σας του Banshee.</desc>
+    <revision pkgversion="1.6" version="1.6" date="2010-07-15" status="review"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+    <credit type="editor">
+      <name>Shaun McCance</name>
+      <email>shaunm at gnome.org</email>
+    </credit>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισαγωγή μουσικής & βίντεο</title>
+
+  <p>Μπορείτε να εισάγετε μουσική και βίντεο αποθηκευμένα στον υπολογιστή σας στο Banshee. Τα εισαχθέντα αρχεία εμφανίζονται στις πηγές σας και μπορείτε να τα επεξεργασθείτε και να τα διαχειριστείτε σαν οποιοδήποτε άλλο μέσο στο Banshee.</p>
+
+  <p>Για να εισάγετε τα αρχεία σας μουσικής ή βίντεο του υπολογιστή σας, επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή πολυμέσων</gui></guiseq>. Θα εμφανισθεί ένα παράθυρο διαλόγου με έναν αριθμό επιλογών.</p>
+
+  <note>
+    <p>Τα πρόσθετα μπορεί να προσθέσουν επιπλέον επιλογές εισαγωγής. Δείτε το <link xref="#plugins"/> παρακάτω.</p>
+  </note>
+
+  <terms>
+    <item>
+      <title><gui>Τοπικοί φάκελοι</gui></title>
+      <p>Επιλέξτε αυτή την επιλογή για να εισάγετε όλα τα αρχεία μουσικής και βίντεο του καθορισμένου φακέλου και όλων των υποφακέλων. Θα εμφανισθεί ένα παράθυρο διαλόγου για να επιλέξετε φάκελο εισαγωγής.</p>
+    </item>
+    <item>
+      <title><gui>Τοπικά αρχεία</gui></title>
+      <p>Επιλέξτε αυτή την επιλογή για να εισάγετε μόνο το καθορισμένο αρχείο ή αρχεία που επιλέγετε. Θα εμφανισθεί ένας διάλογος για να επιλέξετε το αρχείο ή τα αρχεία προς εισαγωγή.</p>
+    </item>
+    <item>
+      <title><gui>Προσωπικός φάκελος</gui></title>
+      <p>Επιλέξτε αυτή την επιλογή για να εισάγετε όλα τα αρχεία μουσικής και βίντεο από όλο τον προσωπικό σας φάκελο, συμπεριλαμβανομένων των αρχείων σε υποφακέλους.</p>
+    </item>
+    <item>
+      <title><gui>Βίντεο από το φάκελο φωτογραφίες</gui></title>
+      <p>Πολλές ψηφιακές κάμερες μπορούν να εγγράφουν μικρά βίντεο και οι εφαρμογές διαχείρισης φωτογραφιών συχνά μεταφορτώνουν αυτά τα βίντεο απευθείας στο φάκελό σας Φωτογραφίες. Επιλέξτε αυτή την επιλογή για να εισάγετε τυχόν βίντεο που έχουν αποθηκευτεί στο φάκελο Φωτογραφίες.</p>
+    </item>
+  </terms>
+
+  <note>
+    <p>Μπορείτε να εισάγετε με ασφάλεια από έναν φάκελο από τον οποίο έχετε ήδη κάνει εισαγωγή χωρίς να ανησυχείτε για τυχόν διπλές εγγραφές στη βιβλιοθήκη σας.</p>
+  </note>
+  
+  <section id="import-playlist">
+    <title>Εισαγωγή από λίστα αναπαραγωγής</title>
+    <p>Μπορείτε επίσης να εισάγετε μουσική από λίστες αναπαραγωγής. Τα περισσότερα αρχεία λίστας αναπαραγωγής έχουν κατάληξη <em>m3u</em>. Για να εισάγετε από μια λίστα αναπαραγωγής, από το μενού του Banshee επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Εισαγωγή λίστας αναπαραγωγής</gui></guiseq>, εντοπίστε το αρχείο της λίστας στο φάκελό σας, επιλέξτε το και πατήστε <gui>Εισαγωγή</gui>.</p>
+  </section>
+  
+  <section id="plugins">
+    <title>Επιπλέον πηγές εισαγωγής</title>
+    <p>Τα πρόσθετα μπορεί να προσθέσουν επιπλέον επιλογές εισαγωγής. Οι ακόλουθες επιπλέον πηγές θα είναι διαθέσιμες αν τα κατάλληλα πρόσθετα είναι ενεργοποιημένα:</p>
+  </section>
+  	
+</page>
diff --git a/help/el/index.page b/help/el/index.page
new file mode 100644
index 0000000..8342b3b
--- /dev/null
+++ b/help/el/index.page
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="guide" id="index">
+
+  <info>
+    <revision pkgversion="1.6" version="0.1" date="2010-01-22" status="incomplete"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--    
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->    
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Αναπαραγωγή πολυμέσων Banshee</title>
+
+  <section id="media" style="2column">
+    <title>Προσθήκη, Αφαίρεση & Αναπαραγωγή</title>
+  </section>
+
+  <section id="manage" style="2column">
+    <title>Διαχείριση & Ταξινόμηση</title>
+  </section>
+  
+  <section id="sync" style="2column">
+    <title>Συγχρονισμός των πολυμέσων σας με φορητή συσκευή μουσικής</title>
+  </section>
+
+  <section id="extensions" style="2column">
+    <title>Προσθήκη επιπλέον λειτουργιών στο Banshee</title>
+  </section>
+  
+  <section id="advanced" style="2column">
+	<title>Προχωρημένες επιλογές και βοήθεια</title>
+  </section>
+
+  <section id="problems">
+    <title>Συνήθη προβλήματα</title>
+  </section>
+
+</page>
diff --git a/help/el/introduction.page b/help/el/introduction.page
new file mode 100644
index 0000000..d060d79
--- /dev/null
+++ b/help/el/introduction.page
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" id="introduction">
+
+  <info>
+    <link type="guide" xref="index"/>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="draft"/>
+    <desc>Εισαγωγή στην <app>Αναπαραγωγή πολυμέσων Banshee</app>.</desc>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισαγωγή</title>
+
+  <p>Το <app>Banshee</app> είναι μια εφαρμογή αναπαραγωγής πολυμέσων που σας επιτρέπει να αναπαράγετε τη μουσική σας, τα βίντεό σας και άλλα πολυμέσα καθώς και να τα συγχρονίζετε με άλλες φορητές συσκευές για να τα έχετε μαζί σας.</p>
+  <p>Το <app>Banshee</app> περιλαμβάνει λειτουργίες εισαγωγής των πολυμέσων σας, διαχείρισης των μεταδεδομένων τους και αναπαραγωγής της μουσικής και των βίντεό σας.</p>
+  <p>Το Banshee σας βοηθά επίσης να συγχρονίσετε τη μουσική και τα βίντεό σας με δημοφιλείς φορητές συσκευές, όπως αναπαραγωγείς ψηφιακής μουσικής και έξυνπα κινητά. Το Banshee υποστηρίζει δημοφιλείς συσκευές περιλαμβανομένων των περισσότερων iPod, τους αναπαραγωγείς MP3 της Sandisk και της Creative και κινητά με λειτουργικό Android.</p>
+
+  <figure>
+    <title>Παράθυρο <gui>Αναπαραγωγή πολυμέσων Banshee</gui></title>
+    <desc><app>Αναπαραγωγή πολυμέσων Banshee</app></desc>
+    <media type="image" src="figures/banshee.png" mime="image/png" style="right">
+      <p>Διεπαφή βιβλιοθήκης <app>Banshee</app></p>
+    </media>
+  </figure>
+
+</page>
diff --git a/help/el/itunes-import.page b/help/el/itunes-import.page
new file mode 100644
index 0000000..2584987
--- /dev/null
+++ b/help/el/itunes-import.page
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="itunes-import">
+
+  <info>
+    <link type="guide" xref="import#plugins"/>
+    <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
+    <desc>Εισαγωγή μουσική και κατηγοριοποίησης από την εφαρμογή αναπαραγωγής πολυμέσων <app>iTunes</app>.</desc>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισαγωγή της βιβλιοθήκης σας του <app>iTunes</app></title>
+
+</page>
diff --git a/help/el/keyboardshortcuts.page b/help/el/keyboardshortcuts.page
new file mode 100644
index 0000000..2dc792d
--- /dev/null
+++ b/help/el/keyboardshortcuts.page
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="keyboardshortcuts">
+
+<info>
+    <link type="guide" xref="advanced#keyboard"/>
+  <desc>Συντομεύσεις πληκτρολογίου</desc>
+  <revision pkgversion="2.0" version="0.1" date="2010-05-29" status="draft"/>
+  <credit type="author">
+    <name>Paul Cutler</name>
+    <email>pcutler at gnome.org</email>
+  </credit>
+
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+
+  <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+  
+  <title>Έλεγχος του Banshee με χρήση συντομεύσεων πληκτρολογίου</title>
+  
+  <section id="playbackcontrol">
+  
+  <title>Έλεγχος αναπαραγωγής</title>
+
+<table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Πλήκτρο</gui></p></td>  <td><p><gui>Ενέργεια</gui></p></td>
+  </tr>
+  <tr>
+    <td><p>Πλήκτρο διαστήματος</p></td> <td><p>Αναπαραγωγή ή παύση του τρέχοντος τραγουδιού</p></td>
+  </tr>
+  <tr>
+    <td><p>N</p></td>     <td><p>Αναπαραγωγή του επόμενου τραγουδιού</p></td>
+  </tr>
+  <tr>
+    <td><p>B</p></td> <td><p>Αναπαραγωγή του προηγούμενου τραγουδιού</p></td>
+  </tr>
+</table>
+
+  </section>
+  
+  <section id="library">
+  
+  <title>Αλληλεπίδραση με βιβλιοθήκη</title>
+
+<table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Πλήκτρο</gui></p></td>  <td><p><gui>Ενέργεια</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>F</key></keyseq></p></td> <td><p>Μεταφορά της εστίασης στο πεδίο αναζήτησης</p></td>
+  </tr>
+  <tr>
+    <td><p><key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq></p></td>
+         <td><p>Άνοιγμα του διαλόγου εισαγωγής πολυμέσων</p></td>
+   </tr>      
+</table>
+
+  </section>  
+
+  <section id="playlists">
+  
+  <title>Αλληλεπίδραση με βιβλιοθήκη</title>
+
+<table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Πλήκτρο</gui></p></td>  <td><p><gui>Ενέργεια</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>N</key></keyseq></p></td> <td><p>Δημιουργία νέας λίστας αναπαραγωγής</p></td>
+  </tr>
+         
+</table>
+
+  </section> 
+  
+    <section id="podcasts">
+  
+  <title>Φορητές εκπομπές</title>
+
+<table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Πλήκτρο</gui></p></td>  <td><p><gui>Ενέργεια</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><key>Y</key></p></td> <td><p>Σήμανση των επιλεγμένων επεισοδίων ως παλαιών</p></td>
+  </tr>
+         
+</table>
+
+  </section> 
+  
+  <section id="interface">
+  
+  <title>Διεπαφή</title>
+
+<table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Πλήκτρο</gui></p></td>  <td><p><gui>Ενέργεια</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><key>F</key></p></td> <td><p>Εναλλαγή κατάστασης πλήρους οθόνης</p></td>
+  </tr>  
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>A</key></keyseq></p></td> <td><p>Επιλέξτε όλα τα τραγούδια στην προβολή λίστας αναπαραγωγής</p></td>
+  </tr>
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>Shift</key><key>A</key></keyseq></p>
+    </td> <td><p>Αποεπιλογή όλων των τραγουδιών στην προβολή λίστας αναπαραγωγής</p></td>
+  </tr>
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>W</key></keyseq></p></td> <td><p>Απόκρυψη του παραθύρου του Banshee (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)</p></td>
+  </tr>    
+  <tr>
+    <td><p><keyseq><key>Έλεγχος</key><key>Αριστερό κουμπί του ποντικιού</key></keyseq>
+    </p></td> <td><p>Αναπαραγωγή προηγούμενου τραγουδιού (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)</p></td>
+  </tr> 
+  <tr> 
+    <td><p><keyseq><key>Έλεγχος</key><key>Δεξί κουμπί του ποντικιού</key></keyseq>
+    </p></td> <td><p>Αναπαραγωγή επόμενου τραγουδιού (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)</p></td>
+  </tr> 
+  <tr> 
+    <td><p><keyseq><key>Έλεγχος</key><key>Μεσαίο κουμπί του ποντικιού</key></keyseq>
+    </p></td> <td><p>Εναλλαγή αναπαραγωγής / παύσης (Απαιτεί ενεργοποίηση του πρόσθετου περιοχής ειδοποιήσεων)</p></td>
+  </tr>    
+         
+</table>
+
+  </section>   
+</page>
diff --git a/help/el/lastfm.page b/help/el/lastfm.page
new file mode 100644
index 0000000..4a5cba8
--- /dev/null
+++ b/help/el/lastfm.page
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="lastfm">
+
+  <info>
+    <link type="guide" xref="extend#official"/>
+    <link type="seealso" xref="sync"/>
+    <desc>Ενεργοποιήστε το Last.fm, αναφορά τραγουδιών και το ραδιόφωνο του Last.fm.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2010-07-15" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Last.fm</title>    
+  
+  <p>Το Last.fm είναι μια δημοφιλής δικτυακή υπηρεσία που προσφέρει τόσο δωρεάν όσο και επί πληρωμή υπηρεσίες. Το Last.fm προσφέρει πληροφορίες για καλλιτέχνες της μουσικής και δίσκους και αν δημιουργήσετε ένα προφίλ χρήστη, το Last.fm σας επιτρέπει να παρακολουθείτε τη μουσική που ακούτε στο Banshee δωρεάν. Αν γίνετε επί πληρωμή συνδρομητής, μπορείτε επίσης να ακούτε ροές μουσικής από το Last.fm σε διάφορους πελάτες μουσικής, περιλαμβανομένου του Banshee. Το Last.fm προσφέρει πολλαπλά κανάλια για ροές, περιλαμβανομένης προτεινόμενης μουσικής για εσάς με βάση τις συνήθειες ακρόασής σας, τα αγαπημένα σας και άλλα.</p>
+  
+  <section id="enable-lastfm">
+  <title>Ενεργοποίηση Last.fm</title> 
+  <p>Για να αξιοποιήσετε καλύτερα το Last.fm, θα πρέπει να δημιουργήσετε ένα προφίλ. Επισκεφθείτε το <link href="http://www.last.fm/join">http://www.last.fm/join</link> για να δημιουργήσετε ένα λογαριασμό ή επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Προτιμήσεις</gui></guiseq> από το μενού του Banshee. Μετά πατήστε την καρτέλα <gui>Για συγκεκριμένη πηγή</gui> και πατήστε το αναπτυσσόμενο μενού <gui>Πηγή</gui>, επιλέξτε <gui>Last.fm</gui> και επιλέξτε <em>Εγγραφή στο Last.fm</em>.</p>
+  
+  <p>Για να μπορεί το Banshee να αναφέρει τα τραγούδια που αναπαράγετε στον υπολογιστή σας στο Last.fm, συνδεθείτε σε αυτό στο Banshee στις προτιμήσεις <gui>Συγκεκριμένης πηγής</gui>. Εισάγετε το όνομα χρήστη σας και πατήστε <gui>Σύνδεση στο Last.fm</gui>. Θα μεταφρεθείτε σε μια ιστοσελίδα του Last.fm στον περιηγητή ιστού σας για να δοθεί πρόσβαση στο Banshee. Πατήστε το σύνδεσμο <gui>Ναι, να επιτραπεί η πρόσβαση</gui> στον περιηγητή σας και θα επανακατευθυνθείτε σε μια ιστοσελίδα που εμφανίζει ένα μήνυμα ότι το Banshee έχει τώρα πρόσβαση στο Last.fm. Επιστρέψτε στο Banshee και πατήστε το κουμπί <gui>Ολοκλήρωση σύνδεσης</gui> για να ολοκληρωθεί η διαδικασία.</p>
+  
+  </section>
+  
+  <section id="songreporting">
+  <title>Ενεργοποίηση αναφοράς τραγουδιού στο Last.fm</title> 
+  <p>Αφού έχετε επιτυχώς συνδέσει το Banshee με το προφίλ σας στο Last.fm, για να ενεργοποιήσετε την αναφορά τραγουδιών στο προφίλ σας του Last.fm, στην καρτέλα <gui>Συγκεκριμένη πηγή</gui> στις προτιμήσεις του Banshee, πατήστε στο πεδίο <gui>Ενεργοποίηση αναφοράς τραγουδιών</gui>. Αν έχετε ενεργή σύνδεση στο διαδίκτυο, το Banshee θα στέλνει στο Last.fm πληροφορίες σχετικά με τα τραγούδια που παίζετε. Για να προβάλετε το ιστορικό αναπαραγωγής σας, επισκεφθείτε το προφίλ σας στην ιστοσελίδα του Last.fm. Το Last.fm θα ενημερώνει αυτόματα τα μεταδεδομένα της μουσικής σας αν οι πληροφορίες για κάποιο καλλιτέχνη, τίτλο τραγουδιού ή δίσκο είναι λανθασμένες.</p>
+  
+  </section>
+  
+  <section id="lastfm-radio">
+  <title>Ακούστε το ραδιόφωνο του Last.fm</title> 
+  <p>Το ραδιόφωνο του Last.fm είναι δωρεάν για του κατοίκους των ΗΠΑ, του Ηνωμένου Βασιλείου και της Γερμανίας. Οι κάτοικοι άλλων χωρών πρέπει να πληρώσουν για ένα λογαριασμό του Last.fm για ακούσουν ραδιόφωνο. Τα επί πληρωμή μέλη, επίσης έχουν επιπλέον χαρακτηριστικά στο ραδιόφωνο: ακρόαση λιστών αναπαραγωγής και σταθμούς μουσικής που σας αρέσουν ή έχετε επισημάνει. </p>
+  
+  <p>Στο μενού περιεχομένου του Banshee, στην αριστερή πλευρά, θα έχετε τώρα μια ενότητα Last.fm, που περιλαμβάνει τους σταθμούς σας του Last.fm. Θα χρειαστείτε μια ενεργή σύνδεση διαδικτύου για να ακούσετε το ραδιόφωνο του Last.fm. Επιλέξτε το ραδιοφωνικό σταθμό που θέλετε να ακούσετε και το Banshee θα επικοινωνήσει με το Last.fm για να συμπληρώσει τραγούδια για αυτό το ραδιοφωνικό σταθμό. Πατήστε το κουμπί <gui>Αναπαραγωγή</gui> στο Banshee ή το <key>Spacebar</key> για να αρχίσετε τη ροή του ραδιοφωνικού σταθμού. Μπορείτε επίσης να πατήσετε το κουμπί <gui>Επόμενο</gui>, το <key>N</key> ή να επιλέξετε <guiseq><gui>Αναπαραγωγή</gui><gui>Επόμενο</gui></guiseq> για να αναπράγετε το επόμενο τραγούδι στη σειρά του ραδιοφωνικού σταθμού.</p>
+  
+  </section>
+	
+</page>
diff --git a/help/es/legal.xml b/help/el/legal.xml
similarity index 100%
copy from help/es/legal.xml
copy to help/el/legal.xml
diff --git a/help/el/manage-coverart.page b/help/el/manage-coverart.page
new file mode 100644
index 0000000..f96a2b4
--- /dev/null
+++ b/help/el/manage-coverart.page
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="coverart">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="tags"/>
+    <desc>Διαχείριση ή αλλαγή των εξωφύλλων των δίσκων σας.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εξώφυλλο</title>    
+  
+  <p/>
+  
+  <p>
+  </p>
+	
+</page>
diff --git a/help/el/manage-playlists.page b/help/el/manage-playlists.page
new file mode 100644
index 0000000..4c445c7
--- /dev/null
+++ b/help/el/manage-playlists.page
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="playlists">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="tags"/>
+    <link type="seealso" xref="coverart"/>
+    <desc>Δημιουργία και διαχείριση λιστών αναπαραγωγής.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2010-05-26" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Λίστες αναπαραγωγής</title>    
+  
+  <p>Οι λίστες αναπαραγωγής σας επιτρέπουν να δημιουργήσετε και να αποθηκεύσετε μια λίστα μουσικών κομματιών για να αναπαραχθούν με συγκεκριμένη σειρά. Οι λίστες αναπαραγωγής είναι ένας βολικός τρόπος για τη δημιουργία μιας λίστας με τα αγαπημένα σας τραγούδια ή για να χωρίσετε τη βιβλιοθήκη σας σε μικρότερες λίστες στις οποίες είναι εύκολο να περιηγηθείτε. Μερικές φορητές συσκευές αναπαραγωγής σας επιτρέπουν ακόμα και να μεταφέρετε τη λίστα αναπαραγωγής ώστε να μπορείτε να την πάρετε μαζί σας.</p>
+  
+  <p>Το Banshee υποστηρίζει κανονικές λίστες αναπαραγωγής, που περιλαμβάνουν τραγούδια που προσθέτετε στη λίστα αναπαραγωγής καθώς και έξυπνες λίστες αναπαραγωγής. Οι έξυπνες λίστες αναπαραγωγής δημιουργούν αυτόματα λίστες αναπαραγωγής βασισμένες στις συνήθειές σας ακρόασης, στην αγαπημένη σας μουσική και άλλα.</p>
+  
+  <section id="manual">
+  
+    <title>Κανονικές λίστες αναπαραγωγής</title>
+  
+    <p>Μια κανονική λίστα αναπαραγωγής είναι μια λίστα τραγουδιών που έχετε προσθέσει και διαχειρίζεστε. Μπορεί να θέλετε να δημιουργήσετε τη δική σας λίστα τραγουδιών από τον αγαπημένο σας καλλιτέχνη από πολλαπλούς δίσκους ή μια λίστα με έντονο ρυθμό για να ακούτε όσο ασκείστε.</p>
+    
+    <p>Μπορείτε να δημιουργήσετε μια νέα λίστα αναπαραγωγής πατώντας <keyseq><key>Control</key><key>N</key></keyseq>, από το μενού επιλέγοντας <guiseq><gui>Μενού</gui><gui>Νέα λίστα αναπαραγωγής</gui></guiseq> ή επιλέγοντας τα κομμάτια που θέλετε να προσθέσετε στη λίστα αναπαραγωγής. Επιλέξτε τα κομμάτια, κάντε δεξί κλικ και επιλέξτε <guiseq><gui>Προσθήκη στη λίστα αναπαραγωγής</gui><gui>Νέα λίστα αναπαραγωγής</gui></guiseq>. Μπορείτε επίσης να σύρετε και να τα αφήσετε σε μια νέα λίστα αναπαραγωγής επιλέγοντας τα κομμάτια και σύροντάς τα στο αριστερό πλαίσιο πάνω από το <gui>Μουσική</gui>. Καθώς τα σύρετε πάνω από το <gui>Μουσική</gui>, θα εμφανισθεί μια νέα επιλογή <gui><em>Νέα λίστα αναπαραγωγής</em></gui> και μπορείτε να αφήσετε τα κομμάτια πάνω από αυτή για να προσθέσετε στη λίστα αναπαραγωγής. Μπορείτε να επαναλάβετε αυτή τη διαδικασία μέχρι να προσθέσετε όλα τα κομμάτια που θέλετε στη λίστα αναπαραγωγής.</p>
+
+    <p>Για να δώσετε στη λίστα αναπαραγωγής όνομα, επιλέξτε τη, κάντε δεξί κλικ σε αυτή, πατήστε <gui>Μετονομασία λίστας αναπαραγωγής</gui> και εισάγετε το όνομα της λίστας.</p>
+    
+    <p>Μπορείτε να αλλάξετε τη σειρά στη λίστα αναπαραγωγής σύροντας τα τραγούδια στη νέα θέση τους στη λίστα. Τα τραγούδια μπορούν να επαναδιαταχθούν στη λίστα μόνο όταν καμία στήλη δεν είναι ταξινομημένη. Για να αποταξινομήσετε μια στήλη, κάντε κλικ πάνω της μέχρι να μην εμφανίζεται πάνω ή κάτω βέλος και η στήλη να είναι κενή και μετά επαναδιατάξτε τη λίστα αναπαραγωγής.</p>
+    
+    <p>Για να αφαιρέσετε ένα κομμάτι από τη λίστα αναπαραγωγής, επιλέξτε τα κομμάτια που θέλετε να αφαιρέσετε. Πατήστε το <key>Delete</key>, επιλέξτε από το μενού <guiseq><gui>Επεξεργασία</gui><gui>Αφαίρεση από τη λίστα αναπαραγωγής</gui></guiseq> ή κάντε δεξί κλικ στο κομμάτι(α) με το ποντίκι σας και πατήστε <gui>Αφαίρεση από τη λίστα αναπαραγωγής</gui>.</p>
+  </section> 
+  
+  <section id="smartplaylists">
+    <title>Έξυπνη λίστα αναπαραγωγής</title>
+    
+    <p>Οι έξυπνες λίστες αναπαραγωγής σας επιτρέπουν να δημιουργήσετε γρήγορα μια δυναμική λίστα βασισμένη σε ένα αριθμό προκαθορισμένων μεταβλητών. Μπορεί να δημιουργήσετε γρήγορα μια νέα λίστα αναπαραγωγής βασισμένη σε ένα καλλιτέχνη, σε αγαπημένα και άλλα.</p>
+    
+    <p>Για να δημιουργήσετε μια έξυπνη λίστα αναπαραγωγής, από το μενού επιλέξτε <guiseq><gui>Πολυμέσα</gui><gui>Νέα έξυνπη λίστα αναπαραγωγής</gui></guiseq>. Θα εμφανιστεί ένας διάλογος για δημιουργία νέας έξυπνης λίστας αναπαραγωγής. Εισάγετε το όνομα της λίστας αναπαραγωγής σας και μετά επιλέξτε τα κριτήρια στα οποία θα βασίζεται η λίστα σας. Μπορεί να επιλέξετε από οποιοδήποτε πεδίο περιλαμβάνεται στα μεταδεδομένα του τραγουδιού, όπως Δίσκος, Καλλιτέχνης ή Έτος. Επιλέξτε τα κριτήρια και μετά επιλέξτε ένα από τα ακόλουθα:</p>
+    
+    <list>
+      <item><p>είναι</p></item>
+      <item><p>δεν είναι</p></item>  
+      <item><p>λιγότερο από</p></item>
+      <item><p>περισσότερο από</p></item>  
+      <item><p>το πολύ</p></item>
+      <item><p>τουλάχιστον</p></item>  
+    </list>
+    
+    <p>Μπορείτε επίσης να πατήσετε το κουμπί <gui>+</gui> για να προσθέσετε ένα ερώτημα προσθήκης στην έξυπνη λίστα αναπαραγωγής σας. Παραδείγματος χάριν, θα μπορούσατε να δημιουργήσετε μια έξυπνη λίστα αναπαραγωγής που περιλαμβάνει όλα τα τραγούδια από το 2010 που βαθμολογήσατε με 5 αστέρια. Για να δημιουργήσετε αυτή τη λίστα θα επιλέγατε:</p>
+    
+  <table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Έτος</gui></p></td> <td><p><gui>είναι</gui></p> </td> 
+    <td><p><gui>2010</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><gui>Βαθμολογία</gui></p></td> <td><p><gui>είναι</gui></p></td> 
+    <td><p><gui/>5 αστέρια</p></td>
+  </tr>
+  </table>
+    
+    <p>Μπορείτε τότε προαιρετικά να επιλέξετε πόσα τραγούδια περιλαμβάνονται πατώντας το <gui>Περιορισμός</gui> στο πεδίο επιλογής και επιλέγοντας τον αριθμό των τραγουδιών που θα περιληφθούν.</p>
+  
+  <p>Το Banshee περιλαμβάνει επίσης έξυπνες λίστες αναπαραγωγής που έχουν δημιουργηθεί για εσάς. Πατήστε το κουμπί <gui>Άνοιγμα στον επεξεργαστή</gui> για να δείτε πως δημιουργήθηκε η λίστα αναπαραγωγής ή για να την τροποποιήσετε. Αν πατήσετε <gui>Δημιουργία και αποθήκευση</gui> η λίστα θα δημιουργηθεί αυτόματα και θα αποθηκευτεί. Περιλαμβάνονται οι ακόλουθες λίστες αναπαραγωγής:</p>
+  
+  <list>
+    <title>Έξυπνες λίστες αναπαραγωγής του Banshee</title>
+    <item><p>Αγαπημένα (τραγούδια με 4 και 5 αστέρια)</p></item>
+    <item><p>Πρόσφατα αγαπημένα (τραγούδια που ακούστηκαν συχνά την προηγούμενη εβδομάδα)</p></item>  
+    <item><p>Πρόσφατες προσθήκες (τραγούδια που εισήχθησαν εντός της προηγούμενης εβδομάδας)</p></item>
+    <item><p>Δεν έχουν ακουστεί (τραγούδια που δεν έχουν αναπαραχθεί ή παραβλεφθεί)</p></item>
+    <item><p>Παραμελημένα αγαπημένα (αγαπημένα που δεν έχουν παιχθεί για πάνω από δύο μήνες)</p></item>
+    <item><p>700 MB αγαπημένων (ένα CD δεδομένων γεμάτο με αγαπημένα τραγούδια)</p></item>
+    <item><p>80 λεπτά αγαπημένων (ένα CD ήχου γεμάτο με αγαπημένα τραγούδια)</p></item>
+    <item><p>Χωρίς βαθμολογία (τραγούδια που δεν έχουν αξιολογηθεί)</p></item>
+  </list>
+ 
+   </section> 
+ 
+</page>
diff --git a/help/el/manage-tags.page b/help/el/manage-tags.page
new file mode 100644
index 0000000..b9b1d29
--- /dev/null
+++ b/help/el/manage-tags.page
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="tags">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="coverart"/>
+    <link type="seealso" xref="playlists"/>
+    <desc>Επεξεργασία και αλλαγή ετικετών μουσικής και μεταδεδομένων.</desc>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-09" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+  
+  <title>Μεταδεδομένα μουσικής</title>
+
+  <section id="metadata">
+
+  <title>Μεταδεδομένα μουσικής</title>    
+  
+  	<p>Η ψηφιακή μουσική περιέχει μεταδεδομένα που αποθηκεύουν πληροφορίες στο μουσικό αρχείο που περιλαμβάνουν τον καλλιτέχνη, το δίσκο, το έτος ηχογράφησης, το είδος και άλλα. Σχεδόν όλη η μουσική που αγοράζεται μέσω διαδικτύου θα έχει ήδη ενσωματωμένα τα μεταδεδομένα και αν εισάγετε μουσική από CD, το Banshee θα συμπεριλάβει τα μεταδεδομένα κατά την εξαγωγή από το CD, αν είναι διαθέσιμα. Για περισσότερες πληροφορίες για την εξαγωγή CD και την συμπερίληψη μεταδεδομένων δείτε την <link xref="εισαγωγή"/>.</p>
+  	
+  	<p>Δημοφιλείς μορφές μεταδεδομένων είναι οι ID3v1 και ID3v2 για αρχεία MP3 και τα σχόλια Vorbis για αρχεία OGG Vorbis.</p>	
+  
+  	<p>Αν έχετε εισαγάγει τραγούδια που δεν περιέχουν μεταδεδομένα, το <app>Banshee</app> θα εμφανίσει <gui>Άγνωστο</gui> στα περισσότερα πεδία στη βιβλιοθήκη.</p>
+  	
+  </section>
+
+  <section id="editmetadata"> 	
+    
+    <title>Επεξεργασία μεταδεδομένων</title>
+    
+    <p>Μπορείτε να αλλάξετε και να επεξεργασθείτε τα μεταδεδομένα των τραγουδιών σας. Επιλέξτε το τραγούδι ή τα τραγούδια που θέλετε να ενημερώσετε και πατήστε το <key>E</key>, επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Επεξεργασία πληροφοριών κομματιού</gui></guiseq> από το μενού ή κάντε δεξί κλικ στα αρχεία και επιλέξτε <gui>Επεξεργασία πληροφοριών κομματιού</gui>.</p>
+    
+    <p>Θα εμφανιστεί ένα παράθυρο διαλόγου που εμφανίζει τα μεταδεδομένα του τραγουδιού και σας επιτρέπει να τα αλλάξετε ή να τα ενημερώσετε. Τα προεπιλεγμένα πεδία που εμφανίζονται περιλαμβάνουν:</p>
+    
+    <list>
+      <item><p><gui>Τίτλος κομματιού:</gui></p></item>
+      <item><p><gui>Καλλιτέχνης κομματιού</gui></p></item>
+      <item><p><gui>Τίτλος δίσκου</gui></p></item>
+      <item><p><gui>Είδος</gui></p></item>
+      <item><p><gui>Αριθμός κομματιού</gui></p></item>
+      <item><p><gui>Αριθμός δίσκου</gui></p></item>
+      <item><p><gui>Έτος</gui></p></item>
+    </list>
+    
+    <p>Ενημερώστε τις πληροφορίες τραγουδιού. Αν έχετε επιλέξει πολλαπλά τραγούδια για επεξεργασία, πατήστε το εικονίδιο με το δεξί βέλος στα δεξιά του πεδίου <gui>Τίτλος κομματιού</gui> ή πατήστε το κουμπί <gui>Μπροστά</gui> στο κάτω μέρος του διαλόγου όταν τελειώνετε με κάθε τραγούδι. Όταν έχετε επεξεργασθεί όλα τα μεταδεδομένα, πατήστε <gui>Αποθήκευση</gui>.</p>
+   
+  </section>
+
+</page>
diff --git a/help/el/play-queue.page b/help/el/play-queue.page
new file mode 100644
index 0000000..c2a2861
--- /dev/null
+++ b/help/el/play-queue.page
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="queue">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="play"/>
+    <desc>Προσθήκη μέσων στη σειρά αναπαραγωγής σας.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2010-05-26" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Σειρά αναπαραγωγής</title>    
+  
+  <p>Η <gui>σειρά αναπαραγωγής</gui> σας επιτρέπει να προσθέσετε μουσική για να αναπαραχθεί με τη σειρά. Μπορείτε να προσθέσετε πολλά κομμάτια για να ακούσετε πολλές ώρες μουσικής χωρίς διακοπή. Μπορείτε να προσθέσετε μεμονωμένα κομμάτια ή ολόκληρους δίσκους και να τα ταξινομήσετε ή να τα επαναδιατάξετε.</p>
+  
+<section id="addqueue">
+
+  <title>Προσθήκη μουσικής στη σειρά αναπαραγωγής</title>
+
+  <p>Από τη μουσική σας βιβλιοθήκη, θα χρειαστεί να επιλέξετε τα κομμάτια ή τους δίσκους που θέλετε να προσθέσετε στη σειρά αναπαραγωγής.</p>
+  
+  <p>Για να προσθέσετε έναν ολόκληρο δίσκο στη σειρά αναπαραγωγής, με το ποντίκι σύρετε το δίσκο πάνω από τη <gui>σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου.</p>
+  
+  <p>Μπορείτε να προσθέσετε μουσικά κομμάτια στη σειρά αναπαραγωγής μεμονωμένα ή ως ομάδα. Για να προσθέσετε ένα μεμονωμένο αρχείο, σύρετε και αφήστε το πάνω στη <gui>Σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου ή κάντε δεξί κλικ στο κομμάτι και επιλέξτε <gui>Προσθήκη στη σειρά αναπαραγωγής</gui>.</p>
+  
+  <p>Μπορείτε να επιλέξετε πολλαπλά αρχεία με το ποντίκι και πατώντας το <key>Control</key> και επιλέγοντας κάθε αρχείο με το ποντίκι σας ή επιλέγοντας μια σειρά αρχείων πατώντας δυο φορές το <key>Shift</key> για να τα επιλέξετε. Μπορείτε μετά να σύρετε και να τα αφήσετε πάνω στη <gui>Σειρά αναπαραγωγής</gui> στο αριστερότερο πλαίσιο του παραθύρου ή να κάνετε δεξί κλικ στα κομμάτια και να επιλέξτε <gui>Προσθήκη στη σειρά αναπαραγωγής</gui>.</p>
+  
+</section>
+
+<section id="reorderqueue">
+
+  <title>Οργάνωση της σειράς αναπαραγωγής σας</title>
+
+  <p>Η σειρά αναπαραγωγής σας οργανώνεται με τη σειρά που προσθέσατε τα κομμάτια. Τα πρώτα κομμάτια ή δίσκοι που προσθέσατε θα αναπαραχθούν πρώτα. Μπορείτε να επαναδιατάξετε τη σειρά αναπαραγωγής με το ποντίκι, σύροντας και αφήνοντας ένα κομμάτι ή ομάδα κομματιών στη λίστα. Επιλέξτε το κομμάτι(α) που θέλετε να επαναδιατάξετε με το ποντίκι σας και αφήστε το κουμπί του ποντικιού πάνω από τον αριθμό ή θέση της λίστας που θέλετε να τοποθετηθούν αυτά τα αρχεία.</p>
+
+</section>  
+  
+<section id="removequeue">
+
+  <title>Αφαίρεση κομματιών από τη σειρά αναπαραγωγής</title>
+
+  <p>Μπορείτε να αφαιρέσετε ένα μεμονωμένο κομμάτι, μια ομάδα κομματιών ή να εκκαθαρίσετε όλη τη σειρά αναπαραγωγής.</p>
+  
+  <p>Για να αφαιρέσετε ένα μεμονωμένο κομμάτι ή ομάδα κομματιών, επιλέξτε το κομμάτι με το ποντίκι σας και πατήστε <key>Delete</key>.</p>
+  
+  <p>Για να εκκαθαρίσετε όλη τη σειρά αναπαραγωγής σας, πατήστε το κουμπί <gui>Εκκαθάριση</gui> στην πάνω δεξιά γωνία της σειράς αναπαραγωγής.</p>
+  
+</section>      
+	
+</page>
diff --git a/help/el/play.page b/help/el/play.page
new file mode 100644
index 0000000..ad49606
--- /dev/null
+++ b/help/el/play.page
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="play">
+
+  <info>
+    <link type="guide" xref="index#media"/>
+    <link type="seealso" xref="queue"/>
+    <desc>Αναπαράγετε τα βίντεο και τα αρχεία σας μουσικής.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+  
+  <title>Αναπαραγωγή των πολυμέσων σας</title>
+
+  <section id="playmusic">
+  <title>Αναπαραγωγή της μουσικής σας</title>    
+  
+  <p>Για αναπαραγωγή μουσικής στο Banshee, επιλέξτε την πηγή μουσική. Η βιβλιοθήκη μουσικής θα σας εμφανίσει όλους τους καλλιτέχνες στη βιβλιοθήκη, το εξώφυλλο για κάθε δίσκο και μια λίστα όλων των τραγουδιών στη βιβλιοθήκη σας.</p>
+  
+  <p>Επιλέξτε το δίσκο ή το τραγούδι που θέλετε να αναπαραχθεί από τη λίστα καλλιτεχνών, δίσκων ή χρησιμοποιήστε τη γραμμή αναζήτησης στην πάνω δεξιά γωνία του Banshee.</p>
+  
+  <p>Για να αρχίσετε την αναπαραγωγή ενός τραγουδιού, κάντε διπλό κλικ με το ποντίκι σας στο όνομα του τραγουδιού, πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  <p>Μπορείτε να ξεκινήσετε την αναπαραγωγή ενός δίσκου επιλέγοντας το δίσκο στην περιήγηση δίσκων και με διπλό κλικ στο όνομα του τραγουδιού, πατώντας το <key>πλήκτρο διαστήματος</key> ή επιλέγοντας <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  <p>Για να αναπαραχθούν όλα τα τραγούδια ενός καλλιτέχνη, επιλέξτε τον καλλιτέχνη από την περιήγηση και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  <p>Το Banshee επίσης εμφανίζει τους αγαπημένους σας δίσκους (αυτούς που ακούτε περισσότερο), τα πρόσφατα αγαπημένα, τις πρόσφατες προσθήκες και αυτά που δεν έχουν αναπαραχθεί ποτέ. Επιλέξτε αυτό που επιθυμείτε να ακούσετε και μπορείτε να αναπαράγετε τραγούδια από το καθένα.</p>
+  
+  </section>
+
+  <section id="playvideo">
+  <title>Αναπαραγωγή βίντεο</title>    
+  
+  <p>Τα εισαγόμενα βίντεο εμφανίζονται αλφαβητικά. Για την αναπαραγωγή ενός βίντεο, επιλέξτε το βίντεο που θέλετε να αναπαραχθεί από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  <p>Το Banshee εμφανίζει επίσης τα αγαπημένα σας βίντεο (αυτά που παρακολουθείτε περισσότερο) και αυτά που δεν έχουν προβληθεί. Επιλέξτε ένα και μπορείτε να το αναπαράγετε από τη λίστα.</p>	
+  
+  </section>
+  
+  <section id="playpodcast">
+  <title>Αναπαραγωγή φορητής εκπομπής</title>    
+  
+  <p>Οι φορητές εκπομπές (Podcasts) εμφανίζουν όλες τις φορητές εκπομπές στις οποίες είστε συνδρομητής, όλες τις διαθέσιμες φορητές εκπομπές και η περιήγηση στις φορητές εκπομπές εμφανίζει όλες τις διαθέσιμες φορητές εκπομπές με πρώτες τις πιο πρόσφατες.</p>
+  
+  <p>Για την αναπαραγωγή μιας φορητής εκπομπής, επιλέξτε τη φορητή εκπομπή, που θέλετε να αναπαραχθεί, από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  </section>
+  
+  <section id="playradio">
+  <title>Αναπαραγωγή διαδικτυακού ραδιοφωνικού σταθμού</title>    
+  
+  <p>Η πηγή ραδιόφωνο σας δείχνει αλφαβητικά όλους τους διαδικτυακούς ραδιοφωνικούς σταθμούς που έχετε προσθέσει στο Banshee.</p>
+  
+  <p>Για την αναπαραγωγή ενός διαδικτυακού ραδιοφωνικού σταθμού, επιλέξτε το σταθμό, που επιθυμείτε, από τη λίστα και πατήστε το <key>πλήκτρο διαστήματος</key> ή επιλέξτε <guiseq><gui>Αναπαραγωγή</gui><gui>Αναπαραγωγή</gui></guiseq> από το μενού του Banshee.</p>
+  
+  </section>    
+	
+</page>
diff --git a/help/el/rb-import.page b/help/el/rb-import.page
new file mode 100644
index 0000000..21544ab
--- /dev/null
+++ b/help/el/rb-import.page
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="rb-import">
+
+  <info>
+    <link type="guide" xref="import#plugins"/>
+    <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
+    <desc>Εισάγετε μουσική και κατηγοριοποιήσεις από το <app>Rhythmbox</app>.</desc>
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισάγετε τη βιβλιοθήκη σας του <app>Rhythmbox</app></title>
+
+</page>
diff --git a/help/el/search.page b/help/el/search.page
new file mode 100644
index 0000000..386f651
--- /dev/null
+++ b/help/el/search.page
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="search">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="sort"/>
+    <desc>Αναζήτηση στα μέσα σας και βασικά ερωτήματα.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Αναζήτηση στη βιβλιοθήκη σας του Banshee</title>    
+  
+  <p>Το Banshee έχει μια ισχυρή γλώσσα αναζήτησης. Μπορείτε να ψάξετε εύκολα και γρήγορα στη βιβλιοθήκη σας με βασικούς όρους αναζήτησης ή να κάνετε λεπτομερείς αναζητήσεις με την προχωρημένη ορολογία αναζήτησης του Banshee.</p>
+  
+  <p>Για να εκτελέσετε μια αναζήτηση στη βιβλιοθήκη των μέσων σας στο Banshee, πατήστε το <key>S</key> ή κάντε κλικ στο πεδίο <gui>Αναζήτηση</gui> στην πάνω δεξιά γωνία της προβολής βιβλιοθήκης στο Banshee.</p>
+  
+  <p>Ένα ερώτημα αναζήτησης αποτελείται από μερικούς βασικούς όρους, παραδείγματος χάριν, <em>dave matthews</em>. Εισάγοντας <em>dave matthews</em> στο πεδίο αναζήτησης, το Banshee θα ψάξει σε όλα τα πεδία μεταδεδομένων, περιλαμβανομένων των Τίτλου κομματιού, Τίτλου δίσκου, Καλλιτέχνη δίσκου, Έτους, κλπ. Οποιοδήποτε κομμάτι του οποίου τα μεταδεδομένα περιλαμβάνουν το <em>dave</em> και το <em>matthews</em> θα εντοπισθεί. Οι όροι αναζήτησης δεν κάνουν διάκριση πεζών-κεφαλαίων, δηλαδή δεν χρειάζεται να χρησιμοποιήσετε κεφαλαία στην αρχή των λέξεων. Τα <em>dave</em>, <em>Dave</em>, και <em>DAVE</em> όλα σημαίνουν το ίδιο πράγμα κατά την αναζήτηση.</p>
+
+<section id="operators">
+  <title>Βασικοί τελεστές</title>
+  <p>Οι τελεστές μπορεί να τοποθετηθούν μεταξύ οποιωνδήποτε δύο αναζητούμενων λέξεων ή πριν από μια αναζητούμενη λέξη. Η προεπιλεγμένη λειτουργία είναι <gui/> και χρησιμοποιείται όταν δεν έχουν ορισθεί άλλοι τελεστές μεταξύ δύο όρων της αναζήτησης. Επειδή είναι η προεπιλογή, δεν εμφανίζεται το AND ως τελεστής.</p>
+  
+  <p>Άλλοι βασικοί τελεστές περιλαμβάνουν το <gui>OR</gui> και το <gui>NOT</gui>. Μαζί, αυτοί οι τρεις τελεστές μπορούν να συνθέσουν πολύ ισχυρά ερωτήματα για να σας βοηθήσουν στην αναζήτηση των μέσων σας.</p>
+  
+</section>
+
+<section id="logical">
+  <title>Λογικοί τελεστές και παραδείγματα</title>
+  <p>Η ακόλουθη είναι μια λίστα λογικών τελεστών και παραδειγμάτων των αποτελεσμάτων κατά την αναζήτηση με χρήση τους.</p>
+  
+  <table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Τελεστής</gui></p></td>  <td><p><gui>Περιγραφή</gui></p></td>
+  </tr>
+  <tr>
+    <td><p><em>προεπιλογή</em>, <em>κενό διάστημα</em></p></td> <td><p>Αναζήτηση για δύο όρους με ένα διάστημα μεταξύ των δύο λέξεων ή όρων.</p></td>
+  </tr>
+  <tr>
+    <td><p>OR, or, <key>|</key>, <key>,</key></p></td> <td><p>Τα αποτελέσματα θα είναι δύο όροι με οποιοδήποτε από τα δύο αποτελέσματα σε οποιοδήποτε πεδίο.</p></td>
+  </tr>
+  <tr>
+    <td><p>NOT, not,<key>-</key></p></td> <td><p>
+    Do not display search results with any search term that follows the 
+    operator of NOT, not,<key>-</key>.</p></td>
+  </tr>  
+         
+</table>
+
+  <p>Παραδείγματα λογικών αναζητήσεων περιλαμβάνουν:</p>
+  
+  <table frame="all" rules="rows" shade="rows">
+  <tr>
+    <td><p><gui>Ερώτημα</gui></p></td>  <td><p><gui>Περιγραφή</gui></p></td>
+  </tr>
+  <tr>
+    <td><p>dave matthews</p></td> <td><p>Ταιριάζει με οποιαδήποτε πεδία σε ένα κομμάτι περιέχουν και το <em>dave</em> και το <em>matthews</em>.</p></td>
+  </tr>
+  <tr>
+    <td><p>dave, matthews</p></td> <td><p>Ταιριάζει με οποιαδήποτε πεδία ενός κομματιού περιλαμβάνουν το <em>dave</em> ή το <em>matthews</em>.</p></td>
+  </tr>
+  <tr>
+    <td><p>dave or matthews</p></td> <td><p>Ταιριάζει με οποιαδήποτε πεδία ενός κομματιού περιλαμβάνουν το <em>dave</em> ή το <em>matthews</em>.</p></td>
+  </tr> 
+  <tr>
+    <td><p>dave | matthews</p></td> <td><p>Ταιριάζει με οποιαδήποτε πεδία ενός κομματιού περιλαμβάνουν το <em>dave</em> ή το <em>matthews</em>.</p></td>
+  </tr>       
+  <tr>
+    <td><p>-"dave matthews"</p></td> <td><p>Εμφανίζει όλα τα κομμάτια των οποίων τα πεδία δεν περιέχουν <em>dave matthews</em>.</p></td>
+  </tr> 
+  
+  </table> 
+  
+  <p>Για περισσότερες πληροφορίες για την εκτέλεση πιο σύνθετων ερωτημάτων αναζήτησης, δείτε τη σελίδα <link xref="adv-search"/>.</p>
+  
+</section>
+	
+</page>
diff --git a/help/el/sort.page b/help/el/sort.page
new file mode 100644
index 0000000..9a30ace
--- /dev/null
+++ b/help/el/sort.page
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="sort">
+
+  <info>
+    <link type="guide" xref="index#manage"/>
+    <link type="seealso" xref="search"/>
+    <desc>Ταξινομήστε τα μέσα σας και προσθέστε επιπλέον στήλες.</desc>
+    <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Ταξινομήστε τα μέσα σας</title>
+
+  <section id="addcolumn">
+
+  <title>Προσθήκη στηλών</title>    
+  
+  <p>Καθώς η βιβλιοθήκη σας μεγαλώνει, μπορεί να θέλετε να ταξινομήσετε την προβολή της για να αναπαράγετε, αναζητήσετε ή να προβάλετε συγκεκριμένα τραγούδια, καλλιτέχνες ή δίσκους.</p>
+  
+  <p>Μπορείτε να προσθέσετε περισσότερες στήλες στην προβολή βιβλιοθήκης στο <app>Banshee</app> για να έχετε περισσότερες πληροφορίες για τα τραγούδια και επίσης να μπορείτε να τα ταξινομήσετε. Ως προεπιλογή, το Banshee εμφανίζει για τα τραγούδια στήλες που περιλαμβάνουν <gui>Όνομα</gui>, <gui>Καλλιτέχνη</gui>, <gui>Δίσκο</gui> και <gui>Διάρκεια</gui>. Για να προσθέσετε επιπλέον στήλες, κάντε δεξί κλικ με το ποντίκι σας σε οποιαδήποτε από τις στήλες και το Banshee θα εμφανίσει όλες τις διαθέσιμες στήλες για να επιλέξετε. Κάντε κλικ στο πεδίο δίπλα από το όνομα της στήλης που επιθυμείτε να προσθέσετε στην προβολή βιβλιοθήκης.</p>
+  
+  </section>
+  
+  <section id="sorting">
+    <title>Ταξινόμηση στηλών</title>
+    <p>Μπορείτε να ταξινομήσετε τη βιβλιοθήκη σας κάνοντας κλικ με το ποντίκι σε οποιαδήποτε στήλη εμφανίζεται στην προβολή βιβλιοθήκης. Αν επιθυμείτε να ταξινομήσετε τη μουσική σας βιβλιοθήκη κατά καλλιτέχνη, κάντε κλικ στην επικεφαλίδα της στήλης <gui>Καλλιτέχνης</gui> και το Banshee αυτόματα θα την ταξινομήσει αλφαβητικά. Κάνοντας πάλι κλικ στη στήλη <gui>Καλλιτέχνης</gui> το Banshee θα την ταξινομήσει με αντίστροφη αλφαβητική σειρά.</p>
+  </section>
+	
+</page>
diff --git a/help/el/sync.page b/help/el/sync.page
new file mode 100644
index 0000000..c72fd14
--- /dev/null
+++ b/help/el/sync.page
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" xmlns:e="http://projectmallard.org/experimental/" type="topic" style="task" id="sync">
+
+  <info>
+    <link type="guide" xref="index#sync"/>
+    <link type="seealso" xref="playlists"/>
+    <desc>Συγχρονίστε τα πολυμέσα σας με μια φορητή συσκευή αναπαραγωγής ή ένα έξυπνο κινητό.</desc>
+    <revision pkgversion="1.8" version="0.1" date="2010-08-29" status="draft"/>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>    
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Συγχρονισμός</title>    
+  
+  <p>Το Banshee υποστηρίζει το συγχρονισμό της μουσικής σας με φορητούς αναπαραγωγείς και κινητά. Μπορείτε να προσθέσετε συγκεκριμένα μουσικά κομμάτια, δίσκους ή λίστες αναπαραγωγής ή να επιτρέψετε στο Banshee να συγχρονίσει τη συσκευή σας με ολόκληρη τη βιβλιοθήκη σας. Αφού η συσκευή σας συνδεθεί στον υπολογιστή σας μπορείτε επίσης να αναπαράγετε τα τραγούδια που είναι σε αυτή μέσω του Banshee. Όταν συγχρονίζετε μουσική σε μη απωλεστική μορφή, όπως το FLAC, το Banshee αυτόματα θα μετατρέψει τη μουσική σας σε μια απωλεστική μορφή, όπως το Ogg Vorbis ή το MP3, αν έχετε τους σωστούς κωδικοποιητές εγκατεστημένους.</p>
+  
+  <section id="devices">
+    <title>Υποστήριξη συσκευών</title>
+    <p>Το Banshee υποστηρίζει σχεδόν όλες τις σύγχρονες φορητές συσκευές αναπαραγωγής και τα «έξυπνα» κινητά με την αξιοσημείωτη εξαίρεση των iPhone, iPad και iPod Touch της Apple.</p>
+  
+  <p>Όταν συνδέσετε τη συσκευή σας, το Banshee θα την εμφανίσει στο αριστερό μενού. Πατώντας το εικονίδιο της συσκευής θα μεταφερθείτε στην αρχική της σελίδα στο Banshee όπου εμφανίζονται οι προτιμήσεις σας συγχρονισμού.</p>
+  
+  </section>
+  
+    <section id="sync-settings">
+    <title>Συγχρονίστε τη μουσική σας</title>
+    <p>Μπορείτε να επιλέξετε να διαχειρίζεστε τα πολυμέσα στη φορητή σας συσκευή βάζοντας το Banshee να κάνει αυτόματο συγχρονισμό ή να διαχειρίζεστε τη μουσική και τα πολυμέσα σας χειροκίνητα.</p>
+    
+    <p>Επιλέξτε τη συσκευή σας από το μενού του Banshee και μετά επιλέξτε πως θέλετε να συγχρονίσετε τα πολυμέσα σας, συμπεριλαμβανομένων:</p>
+    <list>
+      <item><p>Μουσικής</p></item>
+      <item><p>Ηχογραφημένων βιβλίων</p></item>  
+      <item><p>Βίντεο</p></item>
+      <item><p>Φορητών εκπομπών (podcast)</p></item>  
+    </list>
+    
+    <p>Από το αναπτυσσόμενο μενού δίπλα σε κάθε μέσο, επιλέξτε από:</p>
+    <list>
+      <item><p>Χειροκίνητη διαχείριση</p></item>
+      <item><p>Συγχρονισμός όλης της βιβλιοθήκης</p></item>  
+    </list>    
+    
+    <note style="warning">
+      <p>Αν επιλέξετε να συγχρονίσετε όλη τη βιβλιοθήκη σας αυτόματα με τη φορητή συσκευή σας αναπαραγωγής βεβαιωθείτε ότι η συσκευή έχει αρκετό χώρο αποθήκευσης. Αν η βιβλιοθήκη σας είναι μεγαλύτερη από το χώρο στη συσκευή, το Banshee θα συγχρονίσει μέχρι να γεμίσει η συσκευή και μετά θα σταματήσει.</p>
+    </note>
+    
+    <p>Αν έχετε δημιουργήσει λίστες αναπαραγωγής ή έξυπνες λίστες αναπαραγωγής στη μουσική σας βιβλιοθήκη, θα εμφανιστούν και αυτές ως επιλογή συγχρονισμού για τη μουσική. Αυτό μπορεί να βοηθά κατά τη δημιουργία έξυπνων λιστών αναπαραγωγής, καθώς αυτές θα ενημερώνονται αυτόματα κατά την προθήκη νέου περιεχόμενου με βάση τους κανόνες της λίστας και το Banshee θα συγχρονίζει τη νέα λίστα με τη συσκευή σας κάθε φορά που τη συνδέετε.</p>
+    
+    <p>Το Banshee θα εμφανίσει το συνολικό χώρο του σκληρού δίσκου της φορητής συσκευής σας αναπαραγωγής με ένα γράφημα στο κέντρο και κάτω στο Banshee. Το γράφημα θα σας δείξει πόσος χώρος καταλαμβάνεται από αρχεία ήχου, βίντεο και άλλα και τον ελεύθερο χώρο. Ακριβώς από κάτω το Banshee θα εμφανίσει πόσα συνολικά αντικείμενα είναι αποθηκευμένα στη συσκευή σας, σε πόσες ώρες ή ημέρες ακρόασης αντιστοιχούν και το συνολικό χώρο που χρησιμοποιείται.</p>
+    
+  </section>
+
+  <section id="sync-manually">
+    <title>Συγχρονισμός ολόκληρης της βιβλιοθήκης σας</title>
+    <p>Μπορείτε να σύρετε και να αφήσετε μέσα στη φορητή σας συσκευή από το Banshee. Επιλέξετε το αρχεία ή τα αρχεία που θέλετε να αντιγράψετε στη φορητή σας συσκευή αναπαραγωγής και μετά πατήστε και κρατήστε πατημένο το δεξί κουμπί του ποντικού και σύρετε το αρχείο ή τα αρχεία στο εικονίδιο της φορητής σας συσκευής στο Banshee. Αυτό θα αντιγράψει τα αρχεία στη συσκευή σας.</p>
+    
+    <p>Αν η μουσική σας βιβλιοθήκη είναι κωδικοποιημένη σε μορφή που δεν υποστηρίζει η φορητή σας συσκευή, όπως OGG ή FLAC, και έχετε τους απαραίτητους κωδικοποιητές εγκατεστημένους, το Banshee θα μετατρέψει αυτόματα αυτά τα αρχεία σε MP3 κατά τη μεταφορά τους στη φορητή συσκευή αναπαραγωγής. Ελέγξτε τη διανομή σας Linux για τους απαραίτητους κωδικοποιητές καθώς είναι εκτός του πεδίου αυτής της βοήθειας και διαφέρει ανά διανομή.</p>
+    
+    <note style="tip">
+      <p>Μπορεί να χρειασθεί να αφαιρέσετε τη φορητή συσκευή σας για να φορτωθούν τα αρχεία σωστά σε αυτή. Για να το κάνετε αυτό στο Banshee, κάντε δεξί κλικ με το ποντίκι πάνω στη συσκευή στο μενού του Banshee και πατήστε <gui>Αποσύνδεση</gui>.</p>
+    </note>
+
+  </section>
+  
+  <section id="pmp-play">
+    <title>Αναπαραγωγή μουσικής από τη φορητή σας συσκευή αναπαραγωγής</title>
+    <p>Μπορείτε να αναπαράγετε μουσική αποθηκευμένη στη φορητή σας συσκευή απευθείας στο Banshee. Επιλέξτε τη από το μενού του Banshee αριστερά και θα εμφανιστεί η βιβλιοθήκη μουσικής που περιέχει. Μπορείτε εν συνεχεία να αναπαράγετε τη μουσική ακριβώς όπως με τη μουσική της βιβλιοθήκης σας.</p>
+  </section>
+  
+  <section id="pmp-delete">
+    <title>Αφαιρέστε μουσική από τη φορητή σας συσκευή αναπαραγωγής</title>
+    <p>Για να αφαιρέσετε τραγούδια αποθηκευμένα στη φορητή σας συσκευή, επιλέξτε τη στο Banshee για να δείτε τη βιβλιοθήκη της. Έπειτα επιλέξτε τα κομμάτια που θα θέλατε να αφαιρέσετε και κάντε δεξί κλικ στα κομμάτια και επιλέξτε "Διαγραφή" ή από το μενού επιλέξτε <guiseq><gui>Επεξεργασία</gui><gui>Διαγραφή</gui></guiseq>.</p>
+    
+     <note style="warning">
+      <p>Η διαγραφή αρχείων από τη φορητή σας συσκευή θα διαγράψει μόνιμα τα αρχεία και δεν θα είναι δυνατό να τα ανακτήσετε.</p>
+    </note>
+    
+  </section>
+
+	
+</page>
diff --git a/help/el/ui.page b/help/el/ui.page
new file mode 100644
index 0000000..28184ee
--- /dev/null
+++ b/help/el/ui.page
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<page xmlns="http://projectmallard.org/1.0/" type="topic" id="ui">
+
+  <info>
+    <link type="guide" xref="index"/>
+    <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="stub"/>
+    <desc>Μια επισκόπηση της διεπαφής χρήστη του <app>Banshee</app></desc>
+    <credit type="author">
+      <name>Paul Cutler</name>
+      <email>pcutler at gnome.org</email>
+    </credit>
+<!--
+    <copyright>
+      <year>2010</year>
+      <name>GNOME Documentation Project</name>
+    </copyright>
+-->
+    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
+  </info>
+
+  <title>Εισαγωγή στη διεπαφή χρήστη του Banshee</title>
+
+  <figure>
+    <title>Παράθυρο <gui>Αναπαραγωγή πολυμέσων Banshee</gui></title>
+    <desc><app>Αναπαραγωγή πολυμέσων Banshee</app></desc>
+    <media type="image" src="figures/banshee.png" mime="image/png" style="right">
+      <p>Διεπαφή βιβλιοθήκης <app>Banshee</app></p>
+    </media>
+  </figure>
+  
+<section id="context">
+  <title>Πηγές</title>
+    <p>Οι πηγές για τη μουσική και τα βίντεό σας εμφανίζονται στα αριστερά στο Banshee. Οι πηγές σας δίνουν γρήγορη πρόσβαση στη Σειρά αναπαραγωγής σας, στη Μουσική, στα Βίντεο, στο Amazon, στο Last.fm, στις Φορητές εκπομπές (Podcasts) και άλλα.</p>
+    
+    <note style="tip">
+      <p>Οι επιλογές του μενού θα αλλάζουν ανάλογα με την πηγή που έχετε επιλέξει. Παραδείγματος χάριν, για να χρησιμοποιήσετε το μενού για την εισαγωγή μιας φορητής εκπομπής (podcast), πρέπει να επιλέξετε την πηγή Φορητές εκπομπές. Η επιλογή του μενού για εισαγωγή φορητής εκπομπής δεν είναι διαθέσιμη όταν βλέπετε τη βιβλιοθήκη των βίντεο ή της μουσικής.</p>
+    </note> 
+</section>
+
+<section id="browser">
+  <title>Περιηγητής βιβλιοθήκης</title>
+  <p>Όταν επιλέγετε μια πηγή μουσικής ή βίντεο από τις πηγές σας, το Banshee θα εμφανίσει το περιεχόμενό σας στον περιηγητή βιβλιοθήκης. Ανάλογα με την πηγή που επιλέγετε, το Banshee μπορεί να εμφανίσει τη βιβλιοθήκη σας μουσικής ή βίντεο ή ακόμα το κατάστημα μουσικής του Amazon για να σας επιτρέψει να αγοράσετε μουσική.</p>
+</section>
+
+<section id="nowplaying">
+  <title>Προβολή τρέχουσας αναπαραγωγής</title>
+  <p>Βοηθάει όταν χρησιμοποιείτε το Banshee σε κατάσταση πλήρους οθόνης, η κατάσταση τρέχουσας αναπαραγωγής αποκρύπτει τη βιβλιοθήκη για να σας δώσει μια μεγαλύτερη προβολή της μουσικής ή του βίντεο που παρακολουθείτε. Όταν ακούτε μουσική, η προβολή τρέχουσας αναπαραγωγής θα εμφανίσει το όνομα του καλλιτέχνη, το δίσκο και το εξώφυλλο, αν είναι διαθέσιμα. Αν παρακολουθείτε βίντεο το Banshee θα εμφανίσει το βίντεο.</p>
+  
+  <p>Για να αλλάξετε την τρέχουσα αναπαραγωγή για να αποκρυφτεί η διεπαφή χρήστη του Banshee και να χρησιμοποιηθεί η κατάσταση πλήρους οθόνης, πατήστε το <key>F</key> ή το κουμπί <gui>Πλήρης οθόνη</gui> στην πάνω δεξιά γωνία του Banshee ή επιλέξτε <guiseq>Προβολή<gui/>Πλήρης οθόνη<gui/></guiseq> για να αρχίσετε την κατάσταση πλήρους οθόνης.</p>
+  
+</section>
+
+<section id="library">
+  <title>Βιβλιοθήκη</title>
+  <p>Η προβολή βιβλιοθήκης στο Banshee θα αλλάξει ανάλογα με την πηγή που έχετε επιλέξει. Η βιβλιοθήκη μουσικής θα εμφανίσει εξώφυλλο, καλλιτέχνες στη βιβλιοθήκη σας και λίστα τραγουδιών. Η βιβλιοθήκη φορητών εκπομπών θα εμφανίσει τις συνδρομές σας σε φορητές εκπομπές, εκπομπές που έχουν ή δεν έχουν μεταφορτωθεί και όλες, τις νέες ή τις παλιές εκπομπές. Παρακαλούμε δείτε τη σελίδα βοήθειας κάθε πηγής για λεπτομερείς πληροφορίες για τη διαχείρισή της.</p>
+</section>
+
+
+</page>
diff --git a/help/es/search.page b/help/es/search.page
index be2c1f7..ee13e9d 100644
--- a/help/es/search.page
+++ b/help/es/search.page
@@ -69,7 +69,7 @@
   </tr>
   <tr>
     <td><p>NOT, not,<key>-</key></p></td> <td><p>
-    Do not display search results with any search team that follows the 
+    Do not display search results with any search term that follows the 
     operator of NOT, not,<key>-</key>.</p></td>
   </tr>  
          
diff --git a/help/gl/search.page b/help/gl/search.page
index 3b974b8..8a4595f 100644
--- a/help/gl/search.page
+++ b/help/gl/search.page
@@ -66,7 +66,7 @@
   </tr>
   <tr>
     <td><p>NOT, not,<key>-</key></p></td> <td><p>
-    Do not display search results with any search team that follows the 
+    Do not display search results with any search term that follows the 
     operator of NOT, not,<key>-</key>.</p></td>
   </tr>  
          
diff --git a/help/sl/add-podcast.page b/help/sl/add-podcast.page
index d155fea..4d24d96 100644
--- a/help/sl/add-podcast.page
+++ b/help/sl/add-podcast.page
@@ -6,7 +6,7 @@
     <link type="seealso" xref="remove-media"/>
     <link type="seealso" xref="add-radio"/>
     <link type="seealso" xref="import"/>
-    <desc>Add, remove and play podcasts in Banshee.</desc>
+    <desc>Dodajte, odstranite in predvajajte podcaste v Banshee.</desc>
     <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -21,56 +21,38 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Podcasts</title> 
+  <title>Podcasti</title> 
   
   <section id="podcastdescription">
-     <title>What is a Podcast?</title>
+     <title>Kaj je podcast?</title>
      
-  <p>Podcasts are recorded programs, similar to radio programs, that are
-  available on the internet and allow you to subscribe.  When you subscribe
-  to a podcast in Banshee, each time a new program is released, Banshee
-  will automatically download the podcast and allow you to listen to it.</p>
+  <p>Podcasti so posneti programi podobni radijskim programom, ki so na voljo na internetu in vam omogočajo naročnino. Ko se v Banshee naročite na podcast, bo ob novem izidu programa Banshee samodejno prejel podcast in vam omogočil njegovo poslušanje.</p>
   
-  <p>There are podcasts on almost any subject including music, movies, Linux,
-  and more.  Search the internet using your favorite search engine with a 
-  search term such as "movie podcast" and you will be presented with many 
-  options to choose from.</p>
+  <p>Obstajajo podcasti o skoraj vseh temah vključno z glasbo, filmi, Linuxom in več. Iščite po internetu z uporabo svojega priljubljenega iskalnika z iskalnim nizom kot je "film podcast" in predstavljenih vam bo veliko možnosti za izbiro.</p>
   
   </section>
   
   <section id="addpodcast">
-    <title>Add a Podcast</title>
+    <title>Dodajanje podcasta</title>
   
-  <p>To add a Podcast to Banshee you will first need to visit the podcast's
-  home page on the internet in your browser.  Almost all podcasts will have a 
-  button or link displayed to subscribe to the podcast.  Copy the link
-  to the podcast's subscription.  In most web browsers, you can right click
-  on the link and choose <gui>Copy link</gui>.
-  </p>
+  <p>Za dodajanje podcasta v Banshee boste morali najprej obiskati domačo stran podcasta v svojem spletnem brskalniku. Skoraj vsi podcasti bodo imeli prikazan gumb ali povezavo za naročilo nanj. Kopirajte povezavo na naročilo podcasta. V večini brskalnikov lahko desno kliknete na povezavo in izberete <gui>Kopiraj povezavo</gui>. </p>
   
-  <p>In Banshee, press and choose <gui>Subscribe to Podcasts</gui> in the 
-  upper right hand corner, from the menu choose <guiseq><gui>Media</gui><gui>
-  Subscribe to Podcast</gui></guiseq> or use the keyboard shortcut <keyseq>
-  <key>Shift</key><key>Control</key><key>F</key></keyseq>.
-  </p>
+  <p>V zgornjem desnem kotu Banshee izberite <gui>Naroči se na podcaste</gui>, v meniju izberite choose <guiseq><gui>Večpredstavnost</gui><gui> Naroči se na podcast</gui></guiseq> ali uporabite tipkovno bližnjico <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>.</p>
   
-  <p>Banshee will then allow you to choose how you want to download new podcasts
-  from a drop down menu.  Your choices include:</p>
+  <p>Banshee vam bo nato v spustnem meniju omogočal izbiro kako želite prejeti nove podcaste. Vaše izbire vključujejo: </p>
   
   <list>
-  	<item><p>Download the Most Recent Episode (This will automatically
-  	download the last episode that was released).</p></item>
-  	<item><p>Download All Episodes (This will download all episodes).</p></item>
-	<item><p>Let Me Decide Which Episodes to Download (This will allow you
-	to choose which episodes you would like to download).</p></item>
+  	<item><p>Prejemi najnovejšo epizodo (to bo samodejno prejelo zadnjo izdano epizodo).</p></item>
+  	<item><p>Prejmi vse epizode (To bo prejelo vse epizode).</p></item>
+	<item><p>Naj sam/a odločim katere epizode naj prejmem (to vam bo omogočilo izbiro epizod, ki jih želite prejeti).</p></item>
   </list>
 
-  <p>After you have added a Podcast feed, Banshee will display:</p>
+  <p>Po dodajanju vira podcasta bo Banshee prikazal:</p>
   
   <list>
-  	<item><p><gui>Name</gui>: (Name of the specific episode)</p></item>
-  	<item><p><gui>Podcast</gui>: (Name of the Podcast)</p></item>
-  	<item><p><gui>Published</gui> (Date the episode was published or released)</p></item>
+  	<item><p><gui>Ime</gui>: (Ime določene epizode)</p></item>
+  	<item><p><gui>Podcast</gui>: (Ime podcasta)</p></item>
+  	<item><p><gui>Objavljeno</gui> (Datum objave ali izida epizode)</p></item>
   </list>
   
   </section>	
diff --git a/help/sl/add-radio.page b/help/sl/add-radio.page
index c37d63e..7a415b6 100644
--- a/help/sl/add-radio.page
+++ b/help/sl/add-radio.page
@@ -6,7 +6,7 @@
     <link type="seealso" xref="remove-media"/>
     <link type="seealso" xref="add-podcasts"/>
     <link type="seealso" xref="import"/>
-    <desc>Add, remove and play internet radio stations in Banshee.</desc>
+    <desc>Dodajte, odstranite in predvajajte internetne radijske postaje v Banshee.</desc>
     <revision pkgversion="2.0" version="0.1" date="2010-05-20" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -21,48 +21,29 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Internet Radio</title> 
+  <title>Internetni radio</title> 
   
   <section id="radiodescription">
-     <title>What is Internet Radio?</title>
+     <title>Kaj je internetni radio?</title>
      
-  <p>Internet radio stations are similar to regular radio stations, allowing
-  an individual or organization to stream music live over the internet.
-  Internet radio stations can be a simultaneous stream of a regular radio station,
-  an amateur broadasting their own station, or commercial
-  internet radio stations that include live DJs and even commercials.</p>
+  <p>Internetne radijske postaje so podobne običajnim radijskim postajam. Posamezniku ali organizaciji omogočajo živo pretakanje glasbe preko interneta. Internetne radijske postaje so lahko hkraten pretok običajne radijske postaje, amaterji, ki razpršeno oddajajo svojo lastno postajo ali komercialne internetne radijske postaje, ki vključujejo DJ-je in celo reklame.</p>
   
   </section>
   
   <section id="addradio">
   
-  <title>Add Radio Station</title>
+  <title>Dodajanje radijske postaje</title>
   
-  <p>To add an internet radio station to Banshee, press <gui>Add Station</gui>
-  in the upper right hand corner of Banshee or, from the menu, choose <guiseq>
-  <gui>Menu</gui><gui>Add Station</gui></guiseq>.
-  </p>
+  <p>Za dodajanje internetne radijske postaje v Banshee v zgornjem desnem kotu Banshee pritisnite <gui>Dodaj postajo</gui> ali pa v meniju izberite <guiseq><gui>Meni</gui><gui>Dodaj postajo</gui></guiseq>.</p>
   
-  <p>From the internet radio station's webpage, copy the link to their stream
-  URL in your web browser.  In most browsers, you can right click on the link
-  and press <gui>Copy Link</gui>.  
-  </p>
+  <p>S spletne strani internetne radijske postaje v svojem brskalniku kopirajte povezavo do URL-ja njihovega pretoka. V večini brskalnikom lahko desno kliknete na povezavo in pritisnete <gui>Kopiraj povezavo</gui>.</p>
    
 
-  <p>Banshee will prompt you to enter the <gui>Station Genre</gui>.
-  Choose the kind of music the internet radio station plays from the available 
-  drop down selections. You will then need to enter the <gui>Station Name</gui>.  
-  Enter a name for the radio station.  Then press tab or use your mouse to select
-  the <gui>Stream URL:</gui> dialog to paste the URL of the radio station.
-  Using your mouse right click and choose <gui>Paste</gui> or press <keyseq>
-  <key>Control</key>+<key>V</key></keyseq>.</p>
+  <p>Banshee vas bo pozval k vnose <gui>Zvrst postaje</gui>. Iz razpoložljivih izbrir spustnega menia izberite vrsto glasbe, ki jo internetna radijska postaja predvaja. Vnesti boste morali <gui>Ime postaje</gui>. Nato pritisnite tabulator ali uporabite svojo miško za izbiro pogovornega okna <gui>URL pretoka:</gui>  v katerega prilepite URL radijske postaje.  Z miško desno kliknite in izberite <gui>Prilepi</gui> ali pritisnite <keyseq><key>Control</key>+<key>V</key></keyseq>.</p>
   
-  <p>You can optionally also fill out the fields for
-  <gui>Station Creator</gui>, <gui>Description</gui>, and <gui>Rating</gui>.
-  </p>
+  <p>Če želite, lahko izpolnite tudi polja <gui>Ustvarjalec postaje</gui>, <gui>Opis</gui> in <gui>Ocena</gui>.</p>
   
-  <p>Then press <gui>Save</gui> to save the internet radio station in Banshee.
-  </p>
+  <p>Nato pritisnite <gui>Shrani</gui> za shranjevanje internetne radijske postaje v Banshee.</p>
   
   </section>
   	  	  
diff --git a/help/sl/advanced.page b/help/sl/advanced.page
index f59a3ef..fe9736b 100644
--- a/help/sl/advanced.page
+++ b/help/sl/advanced.page
@@ -3,7 +3,7 @@
 
   <info>
     <link type="guide" xref="index#advanced"/>
-    <desc>Get help for advanced actions.</desc>
+    <desc>Dobite pomoč za napredne možnosti.</desc>
     <revision pkgversion="2.0" version="0.1" date="2010-05-29" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -18,13 +18,13 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
   
-  <title>Advanced Options and Help</title>
+  <title>Napredne možnosti in pomoč.</title>
 
   <section id="keyboard" style="2column">
     <info>
-      <title type="link">Keyboard Shortcuts</title>
+      <title type="link">Tipkovne bližnjice</title>
     </info>
-    <title>Keyboard Shortcuts</title>
+    <title>Tipkovne bližnjice</title>
   </section>
 	
 </page>
diff --git a/help/sl/amazon.page b/help/sl/amazon.page
index 2312e57..d68f4b6 100644
--- a/help/sl/amazon.page
+++ b/help/sl/amazon.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#extensions"/>
     <link type="seealso" xref=""/>
-    <desc>Sync and purchase music from the Amazon MP3 Store.</desc>
+    <desc>Usklajujte in nakupujte glasbo v trgovini Amazon MP3.</desc>
     <revision pkgversion="1.6" version="0.1" date="2010-07-11" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,62 +19,33 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Amazon MP3 Store</title>    
+  <title>Trgovina Amazon MP3</title>    
   
-  <p>Banshee supports downloading and importing music from the Amazon MP3 store.
-   You can manually import Amazon music files, purchase music in your web 
-   browser or buy music inside of Banshee.  Amazon only offers music for sale
-   as an MP3 in certain countries and depending on your location, you may
-   not be able to buy Amazon MP3s.  
-   </p>
+  <p>Banshee podpira prejemanje in uvažanje glasbe iz trgovine Amazon MP3. Glasbene datoteke Amazon lahko ročno uvozite, kupite glasbo v svojem spletnem brskalniku ali kupite glasbo v Banshee.  Amazon ponuja glasbo le v vrsti MP3 v določenih državah in morda glede na vaše mesto ne boste mogli kupiti Amazon MP3-jev.</p>
    
    <note style="important">
-     <p>Banshee uses an Amazon affiliate code for all music purchases.  All
-     money made via this affiliate code is donated to the GNOME Foundation.
-     </p>
+     <p>Banshee uporablja pridružitveno kodo Amazon za vse nakupe glasbe. Ves denar zbran s to pridružitveno kodo je doniran fundaciji GNOME.</p>
    </note>
    
   <section id="amazon-browser">
-  <title>Purchase Amazon MP3s in your web browser</title> 
+  <title>Kupite Amazon MP3-je v svojem spletnem brskalniku</title> 
   
-  <p>Music purchased from Amazon's MP3 store can be automatically
-  downloaded and imported into Banshee.  Banshee associates itself with
-  the .amz file Amazon provides for MP3 purchases.  When you buy music on 
-  Amazon, your web browser will download the .amz file and Banshee will
-  automatically open it and begin the download and import the music.
-  </p>
+  <p>Glasbo kupljeno v trgovini Amazon MP3 je mogoče samodejno prejeti in uvoziti v Banshee. Banshee se poveže z datoteko .amz, ki jo Amazon zagotavlja za nakupe MP3. Ko kupite glasbo na Amazonu, bo vaš spletni brskalnik prejel datoteko .amz, Banshee jo bo samodejno odprl in začel prejem in uvoz glasbe.</p>
   </section>
   
   <section id="amazon-banshee">
-  <title>Buy Amazon MP3s in Banshee</title> 
+  <title>Kupite Amazon MP3-je v Banshee</title> 
   
-  <p>You can also search for songs on Amazon within Banshee.  Choose the 
-  Amazon MP3 Store from the Banshee menu on the left.  This will load the
-  Amazon MP3 Store just as if you were in a web browser.  You can search
-  Amazon for the music you wish to buy and after logging in to Amazon, buy
-  music with one click.  Banshee will automatically download and import the 
-  your purchase into the library.
-  </p>
+  <p>Skladbe lahko na Amazonu iščete znotraj Banshee. V meniju Banshee na levi izberite trgovino Amazon MP3. To bo naložilo trgovino Amazon MP3 tako, kot če bi bili v spletnem brskalniku. Po Amazonu lahko iščete glasbo, ki jo želite kupiti. Po prijavi v Amazon lahko glasbo kupite z enim klikom. Banshee bo samodejno prejel in uvozil vaš nakup v knjižnico.</p>
   </section>
   
   <section id="amazon-manual">
-  <title>Import Amazon MP3s manually</title> 
+  <title>Ročen uvoz Amazon MP3-je</title> 
   
-  <p>When music is purchased from Amazon in a web browser, a file with the
-  extension .amz is downloaded and saved to your hard drive.   To import
-  music purchased manually from Amazon, in Banshee choose 
-  <guiseq><gui>Media</gui> <gui>Import Media</gui></guiseq> from the menu and
-  select the *.amz file to be imported.  Banshee will then open this file and
-  connect to the Amazon MP3 store to begin the download.
-  </p>
+  <p>Ko glasbo kupite z Amazona v spletnem brskalniku, bo datoteka z razširitvijo .amz prejeta in shranjena na vaš trdi disk. Za uvoz glasbe ročno kupljene z Amazona v Banshee izberite <guiseq><gui>Večpredstavnost</gui><gui>Uvozi večpredstavnost</gui></guiseq> in izberite datoteko *.amz za uvoz. Banshee bo nato odprl to datoteko in se povezal v trgovino Amazon MP3 za začetek prejema.</p>
   
   <note style="warning">
-    <p>Amazon .amz files are only active for a short time.  If you do not
-    download your music quickly, the file will expire and you cannot download
-    your music from Amazon.  Amazon does not publish how long files are active.
-     It is recommended you download and import any purchases from Amazon within
-     an hour of purchase.
-    </p>
+    <p>Datoteke Amazon .amz so dejavne le za kratek čas. V primeru da svoje glasbe ne boste hitro prejeli, bo datoteka potekla in ne boste mogli prejeti svoje glasbe z Amazona. Amazon ne objavlja kako dolgo so datoteke dejavne. Priporočamo vam, da svoje nakupe z Amazona prejmete in uvozite v eni urni od nakupa.</p>
   </note>
   </section> 
 	
diff --git a/help/sl/emusic.page b/help/sl/emusic.page
index 190b567..1531f2c 100644
--- a/help/sl/emusic.page
+++ b/help/sl/emusic.page
@@ -4,10 +4,10 @@
   <info>
     <link type="guide" xref="import#plugins"/>
     <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
-    <desc>Import music purchased from eMusic.</desc>
+    <desc>Uvažanje glasbe kupljene na eMusic.</desc>
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Import your eMusic tracks</title>
+  <title>Uvozite svoje skladbe eMusic</title>
 
 </page>
diff --git a/help/sl/extensions.page b/help/sl/extensions.page
index 795fb1d..301863f 100644
--- a/help/sl/extensions.page
+++ b/help/sl/extensions.page
@@ -3,7 +3,7 @@
 
   <info>
     <link type="guide" xref="index#extensions"/>
-    <desc>Add additional functionality to Banshee.</desc>
+    <desc>Dodajte dodatne zmožnosti v Banshee.</desc>
     <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -18,20 +18,20 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Banshee Extensions</title>
+  <title>Razširitve Banshee</title>
 
   <section id="official" style="2column">
     <info>
-      <title type="link">Official Banshee Extensions</title>
+      <title type="link">Uradne razširitve Banshee</title>
     </info>
-    <title>Manage extensions for Banshee</title>
+    <title>Upravljajte razširitve Banshee</title>
   </section>
 
   <section id="community" style="2column">
     <info>
-      <title type="link">Community Banshee Extensions</title>
+      <title type="link">Razširitve Banshee, ki jih je razvila skupnost</title>
     </info>
-    <title>Add community built extensions for Banshee</title>
+    <title>Dodajte razširitve za Banshee, ki jih je izgradila skupnost</title>
   </section>
 
 
diff --git a/help/sl/import.page b/help/sl/import.page
index d9f48f2..9a62c0d 100644
--- a/help/sl/import.page
+++ b/help/sl/import.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#media"/>
     <link type="seealso" xref="remove-media"/>
-    <desc>Add music and videos from your computer to your Banshee library.</desc>
+    <desc>Dodajte glasbo in videoposnetke s svojega računalnika v vašo knjižnico Banshee.</desc>
     <revision pkgversion="1.6" version="1.6" date="2010-07-15" status="review"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -17,66 +17,47 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Import music & videos</title>
+  <title>Uvozite glasbo in video</title>
 
-  <p>You can import music and videos stored on your computer into Banshee. Imported
-  files appear in your sources and can be edited and managed like any other media in
-  Banshee.</p>
+  <p>V Banshee lahko uvozite glasbo in videoposnetke shranjene na svojem računalniku. Uvožene datoteke se pojavijo v vaših virih in jih je mogoče urejati in upravljati kot katerekoli druge večpredstavnostne datoteke v Banshee.</p>
 
-  <p>To import music or video files on your computer, choose <guiseq><gui>Media</gui>
-  <gui>Import Media</gui></guiseq>. A dialog will appear with a number of choices.</p>
+  <p>Za uvoz glasbenih ali video datotek s svojega računalnika izberite <guiseq><gui>Večpredstavnost</gui><gui>Uvozi večpredstavnost</gui></guiseq>.  Pojavilo se bo pogovorno okno s številnimi izbirami.</p>
 
   <note>
-    <p>Plugins may add additional import choices. See <link xref="#plugins"/>
-    below.</p>
+    <p>Vstavki lahko dodajo dodatne možnosti uvoza. Oglejte si <link xref="#plugins"/> spodaj.</p>
   </note>
 
   <terms>
     <item>
-      <title><gui>Local Folders</gui></title>
-      <p>Choose this option to import all music and video files within
-      a specified folder, including all subfolders. You will be prompted
-      with a dialog to choose a folder to import from.</p>
+      <title><gui>Krajevne mape</gui></title>
+      <p>Izberite to možnost za uvoz vseh glasbenih in video datotek v določeni mapi, vključno z vsemi podmapami. Odprlo se bo pogovorno okno za izbiro mape za uvoz.</p>
     </item>
     <item>
-      <title><gui>Local Files</gui></title>
-      <p>Choose this option to import only the specific file or files
-      you select. You will be prompted with a dialog to choose the
-      file or files to import.</p>
+      <title><gui>Krajevne datoteke</gui></title>
+      <p>Izberite to možnost za uvoz le izbrane datoteke ali datotek. Pozvani boste s pogovornim oknom za izbiro datoteke ali datotek za uvoz.</p>
     </item>
     <item>
-      <title><gui>Home Folder</gui></title>
-      <p>Choose this option to import all music and video files in your
-      entire home folder, including files in any subfolders.</p>
+      <title><gui>Domača mapa</gui></title>
+      <p>Izberite to možnost za uvoz vseh glasbenih in video datotek v vaši celotni domači mapi vključno z datotekami v katerihkoli podmapah.</p>
     </item>
     <item>
-      <title><gui>Videos From Photos Folder</gui></title>
-      <p>Many digital cameras can take short vidoes, and photo-management
-      applications often download these videos directly into your Photos
-      folder. Choose this option to import any videos that have been
-      stored in your Photos folder.</p>
+      <title><gui>Videoposnetki iz mape fotografij</gui></title>
+      <p>Veliko digitalnih fotoaparatov lahko posname kratke videoposnetke, ki jih programi za upravljanje fotografij pogosto uvozijo v vašo mapo Slike. Izberite to možnost za uvoz videov, ki so bili shranjeni v vaši mapi Slike. </p>
     </item>
   </terms>
 
   <note>
-    <p>You can safely import from a folder you have already imported
-    from without worrying about duplicate entries in your library.</p>
+    <p>Mapo lahko varno znova uvozite brez skrbi o podvojenih vnosih v svoji knjižnici. </p>
   </note>
   
   <section id="import-playlist">
-    <title>Import from a Playlist</title>
-    <p>You can also import music from playlists.  Most playlist files end
-    in <em>m3u</em>. To import from a playlist, from the Banshee menu 
-    choose <guiseq><gui>Media</gui><gui>Import Playlist</gui></guiseq> and 
-    locate the playlist file in your folder, select it and press 
-    <gui>Import</gui>.
-    </p>
+    <title>Uvozi s seznama predvajanja</title>
+    <p>Glasbo lahko uvozite tudi s seznamov predvajanja. Večina datotek seznamov predvajanja se konča z <em>m3u</em>. Za uvoz s seznama prevajanja v meniju Banshee izberite  <guiseq><gui>Večpredstavnost</gui><gui>Uvozi seznam predvajanja</gui></guiseq> in v svoji mapi najdite datoteko seznama predvajanja, jo izberite in pritisnite <gui>Uvozi</gui>.</p>
   </section>
   
   <section id="plugins">
-    <title>Additional Import Sources</title>
-    <p>Plugins may add additional import choices. The following additional
-    sources will be available if the appropriate plugins are enabled:</p>
+    <title>Dodatni viri uvoza</title>
+    <p>Vstavki lahko dodajo dodatne možnosti uvoza. Če so primerni vstavki omogočeni, bodo na voljo naslednji dodatni viri:</p>
   </section>
   	
 </page>
diff --git a/help/sl/index.page b/help/sl/index.page
index 60e20aa..0cb6aaa 100644
--- a/help/sl/index.page
+++ b/help/sl/index.page
@@ -16,30 +16,30 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Banshee Media Player</title>
+  <title>Banshee predvajalnik večpredstavnostnih datotek</title>
 
   <section id="media" style="2column">
-    <title>Add, Remove & Play</title>
+    <title>Dodaj, odstrani in predvajaj</title>
   </section>
 
   <section id="manage" style="2column">
-    <title>Manage & Sort</title>
+    <title>Upravljaj in razvrsti</title>
   </section>
   
   <section id="sync" style="2column">
-    <title>Sync your media with a portable music player</title>
+    <title>Uskladite svoje večpredstavnostne datoteke s prenosljivim predvajalnikom glasbe</title>
   </section>
 
   <section id="extensions" style="2column">
-    <title>Add additional functionality to Banshee</title>
+    <title>Dodajte dodatne zmožnosti Banshee</title>
   </section>
   
   <section id="advanced" style="2column">
-	<title>Advanced options and help</title>
+	<title>Napredne možnosti in pomoč</title>
   </section>
 
   <section id="problems">
-    <title>Common Problems</title>
+    <title>Pogoste težave</title>
   </section>
 
 </page>
diff --git a/help/sl/introduction.page b/help/sl/introduction.page
index ba0c6a3..9c93e64 100644
--- a/help/sl/introduction.page
+++ b/help/sl/introduction.page
@@ -4,9 +4,7 @@
   <info>
     <link type="guide" xref="index"/>
     <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="draft"/>
-    <desc>
-      Introduction to the <app>Banshee Media Player</app>.
-    </desc>
+    <desc>Uvod v <app>Banshee predvajalnik večpredstavnosti</app>.</desc>
     <credit type="author">
       <name>Paul Cutler</name>
       <email>pcutler at gnome.org</email>
@@ -20,29 +18,17 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Introduction</title>
+  <title>Uvod</title>
 
-  <p>
-    <app>Banshee</app> is a media player that allows you to play your music,
-    videos, and other media media as well sync it with portable devices to take your media
-    on the go.
-  </p>
-  <p>
-    <app>Banshee</app> includes features to import your media, manage its
-    metadata, and play your music and videos.
-  </p>
-  <p>
-    Banshee also helps you sync your music and videos to popular portable
-    devices, such as digital audio players and smartphones.  Banshee supports
-    popular devices including most iPods, Sandisk and Creative MP3 players, and
-    Android powered phones.
-  </p>
+  <p><app>Banshee</app> je večpredstavnostni predvajalnik, ki vam omogoča predvajanja vaše glasbe, videov in drugih večpredstavnostnih datotek kot tudi njihovo usklajevanje s prenosnimi napravami.</p>
+  <p><app>Banshee</app> vključuje zmožnosti za uvoz vaših večpredstavnostih datotek, uvoz njihovih metapodatkov in predvajanje vaše glasbe in videov.</p>
+  <p>Banshee vam pomaga tudi uskladiti svojo glasbo in videoposnetke s priljubljenimi prenosnimi napravami kot so digitalni zvočni predvajalniki in pametni telefoni. Banshee podpira priljubljene naprave vključno z večino iPodi, MP3 predvajalniki Sandisk in Creative ter Android telefoni.</p>
 
   <figure>
-    <title><gui>Banshee Media Player</gui> window</title>
-    <desc><app>Banshee Media Player</app></desc>
+    <title>Okno <gui>Banshee predvajalnik večpredstavnostnih datotek</gui></title>
+    <desc><app>Banshee predvajalnik večpredstavnostnih datotek</app></desc>
     <media type="image" src="figures/banshee.png" mime="image/png" style="right">
-      <p><app>Banshee</app> library interface</p>
+      <p>Vmesnik knjižnice <app>Banshee</app></p>
     </media>
   </figure>
 
diff --git a/help/sl/itunes-import.page b/help/sl/itunes-import.page
index faf4cae..041811e 100644
--- a/help/sl/itunes-import.page
+++ b/help/sl/itunes-import.page
@@ -4,10 +4,10 @@
   <info>
     <link type="guide" xref="import#plugins"/>
     <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
-    <desc>Import music and categorizations from the <app>iTunes</app> media player.</desc>
+    <desc>Uvozite glasbo in kategorizacije iz predvajalnika <app>iTunes</app>.</desc>
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Import your <app>iTunes</app> library</title>
+  <title>Uvozite svojo knjižnico <app>iTunes</app></title>
 
 </page>
diff --git a/help/sl/keyboardshortcuts.page b/help/sl/keyboardshortcuts.page
index 1524299..d2f0a57 100644
--- a/help/sl/keyboardshortcuts.page
+++ b/help/sl/keyboardshortcuts.page
@@ -3,7 +3,7 @@
 
 <info>
     <link type="guide" xref="advanced#keyboard"/>
-  <desc>Keyboard Shortcuts</desc>
+  <desc>Tipkovne bližnjice</desc>
   <revision pkgversion="2.0" version="0.1" date="2010-05-29" status="draft"/>
   <credit type="author">
     <name>Paul Cutler</name>
@@ -20,24 +20,24 @@
   <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
   
-  <title>Control Banshee using Keyboard Shortcuts</title>
+  <title>Nadzor Banshee s tipkovnimi bližnjicami</title>
   
   <section id="playbackcontrol">
   
-  <title>Playback Control</title>
+  <title>Nadzor predvajanja</title>
 
 <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Key</gui></p></td>  <td><p><gui>Action</gui></p></td>
+    <td><p><gui>Ključ</gui></p></td>  <td><p><gui>Dejanje</gui></p></td>
   </tr>
   <tr>
-    <td><p>Space Bar</p></td> <td><p>Play or Pause the current song</p></td>
+    <td><p>Preslednica</p></td> <td><p>Predvajanje ali premor predvajanja trenutne pesmi</p></td>
   </tr>
   <tr>
-    <td><p>N</p></td>     <td><p>Play the next song</p></td>
+    <td><p>N</p></td>     <td><p>Predvajaj naslednjo skladbo</p></td>
   </tr>
   <tr>
-    <td><p>B</p></td> <td><p>Play the previous song</p></td>
+    <td><p>B</p></td> <td><p>Predvajaj predhodno skladbo</p></td>
   </tr>
 </table>
 
@@ -45,19 +45,18 @@
   
   <section id="library">
   
-  <title>Library Interaction</title>
+  <title>Interakcija s knjižnico</title>
 
 <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Key</gui></p></td>  <td><p><gui>Action</gui></p></td>
+    <td><p><gui>Ključ</gui></p></td>  <td><p><gui>Dejanje</gui></p></td>
   </tr>
   <tr>
-    <td><p><keyseq><key>Control</key><key>F</key></keyseq></p></td> <td><p>
-    Move the focus to the search box</p></td>
+    <td><p><keyseq><key>Control</key><key>F</key></keyseq></p></td> <td><p>Premakni žarišče v iskalno polje</p></td>
   </tr>
   <tr>
-    <td><p><key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq></p></td>
-         <td><p>Open import media dialog</p></td>
+    <td><p>Pritisnite <keyseq><key>Control</key><key>H</key></keyseq>.</p></td>
+         <td><p>Odpri pogovorno okno uvažanja</p></td>
    </tr>      
 </table>
 
@@ -65,15 +64,14 @@
 
   <section id="playlists">
   
-  <title>Library Interaction</title>
+  <title>Interakcija s knjižnico</title>
 
 <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Key</gui></p></td>  <td><p><gui>Action</gui></p></td>
+    <td><p><gui>Ključ</gui></p></td>  <td><p><gui>Dejanje</gui></p></td>
   </tr>
   <tr>
-    <td><p><keyseq><key>Control</key><key>N</key></keyseq></p></td> <td><p>
-    Create New Playlist</p></td>
+    <td><p><keyseq><key>Control</key><key>N</key></keyseq></p></td> <td><p>Ustvari nov seznam predvajanja</p></td>
   </tr>
          
 </table>
@@ -82,15 +80,14 @@
   
     <section id="podcasts">
   
-  <title>Podcasts</title>
+  <title>Podcasti</title>
 
 <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Key</gui></p></td>  <td><p><gui>Action</gui></p></td>
+    <td><p><gui>Ključ</gui></p></td>  <td><p><gui>Dejanje</gui></p></td>
   </tr>
   <tr>
-    <td><p><key>Y</key></p></td> <td><p>
-    Mark the selected episodes as old</p></td>
+    <td><p><key>Y</key></p></td> <td><p>Označi izbrane epizode kot stare</p></td>
   </tr>
          
 </table>
@@ -99,43 +96,36 @@
   
   <section id="interface">
   
-  <title>Interface</title>
+  <title>Vmesnik</title>
 
 <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Key</gui></p></td>  <td><p><gui>Action</gui></p></td>
+    <td><p><gui>Ključ</gui></p></td>  <td><p><gui>Dejanje</gui></p></td>
   </tr>
   <tr>
-    <td><p><key>F</key></p></td> <td><p>
-    Toggle full-screen mode</p></td>
+    <td><p><key>F</key></p></td> <td><p>Preklopi celozaslonski način</p></td>
   </tr>  
   <tr>
-    <td><p><keyseq><key>Control</key><key>A</key></keyseq></p></td> <td><p>
-   Select all songs in playlist view</p></td>
+    <td><p><keyseq><key>Control</key><key>A</key></keyseq></p></td> <td><p>Izberi vse skladbe v pogledu seznama predvajanja</p></td>
   </tr>
   <tr>
     <td><p><keyseq><key>Control</key><key>Shift</key><key>A</key></keyseq></p>
-    </td> <td><p>
-   Unselect all songs in playlist view</p></td>
+    </td> <td><p>Odstrani izbiro vseh skladb v pogledu seznama predvajanja</p></td>
   </tr>
   <tr>
-    <td><p><keyseq><key>Control</key><key>W</key></keyseq></p></td> <td><p>
-   Hide Banshee Window (Requires Notification Area Plug-in Enabled</p></td>
+    <td><p><keyseq><key>Control</key><key>W</key></keyseq></p></td> <td><p>Skrij okno Banshee (zahteva omogočen vstavek obvestilnega področja</p></td>
   </tr>    
   <tr>
-    <td><p><keyseq><key>Control</key><key>Left Mouse Button</key></keyseq>
-    </p></td> <td><p>
-   Play Previous Song (Requires Notification Area Plug-in Enabled</p></td>
+    <td><p><keyseq><key>Control</key><key>Levi miškin gumb</key></keyseq>
+    </p></td> <td><p>Predvajaj predhodno skladbo (zahteva omogočen vstavek obvestilnega področja</p></td>
   </tr> 
   <tr> 
-    <td><p><keyseq><key>Control</key><key>Right Mouse Button</key></keyseq>
-    </p></td> <td><p>
-   Play Next Song (Requires Notification Area Plug-in Enabled</p></td>
+    <td><p><keyseq><key>Control</key><key>Desni miškin gumb</key></keyseq>
+    </p></td> <td><p>Predvajaj naslednjo skladbo (zahteva omogočen vstavek obvestilnega področja</p></td>
   </tr> 
   <tr> 
-    <td><p><keyseq><key>Control</key><key>Middle Mouse Button</key></keyseq>
-    </p></td> <td><p>
-   Toggle Play / Pause (Requires Notification Area Plug-in Enabled</p></td>
+    <td><p><keyseq><key>Control</key><key>Srednji miškin gumb</key></keyseq>
+    </p></td> <td><p>Preklopi predvajanje / premor (zahteva omogočen vstavek obvestilnega področja</p></td>
   </tr>    
          
 </table>
diff --git a/help/sl/lastfm.page b/help/sl/lastfm.page
index c21854e..afe71d4 100644
--- a/help/sl/lastfm.page
+++ b/help/sl/lastfm.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="extend#official"/>
     <link type="seealso" xref="sync"/>
-    <desc>Enable Last.fm, song reporting and Last.fm radio.</desc>
+    <desc>Omogočite Last.fm, poročanje skladb in radio Last.fm.</desc>
     <revision pkgversion="1.6" version="0.1" date="2010-07-15" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -21,70 +21,27 @@
 
   <title>Last.fm</title>    
   
-  <p>Last.fm is a popular online service that offers both free and paid
-  versions.  Last.fm offers information on music artists and albums and if you 
-  create a user profile Last.fm allows you to track the music you listen to 
-  in Banshee for free.  If you suscribe as a paying member, you can also listen
-  to streaming music from Last.fm in various music clients, including Banshee.
-  Last.fm offers multiple channels to stream, including recommended music for
-  you based on your listening habits, your favorites and more.</p>
+  <p>Last.fm je priljubljena spletna storitev, ki ponuja tako brezplačno in plačano različico. Last.fm ponuja podatke o glasbenih izvajalci in albumih in če ustvarite uporabniški profil, vam Last.fm omogoča brezplačno sledenje glasbe, ki jo poslušate v Banshee. Če se naročite kot plačujoči član, lahko poslušate tudi pretakajočo glasbo z Last.fm v različnih glasbenih odjemalcih vklučno z Banshee. Last.fm ponuja več kanalov za pretok vključno s priporočeno glasbo za vas na osnovi vaših navad poslušanja, vaših priljubljenih in več. </p>
   
   <section id="enable-lastfm">
-  <title>Enable Last.fm</title> 
-  <p>To get the most out of Last.fm, you will want to create a Last.fm profile.
-  Visit <link href="http://www.last.fm/join">http://www.last.fm/join</link>
-   to create an account or choose 
-  <guiseq><gui>Edit</gui><gui>Preferences</gui></guiseq> from the Banshee
-  menu.  Then press the <gui>Source Specific</gui> tab and press the
-  <gui>Source</gui> drop down menu and choose <gui>Last.fm</gui> and select the
-  <em>Sign up for Last.fm</em> link.
-  </p>
+  <title>Omogoči Last.fm</title> 
+  <p>Da bi dobili največ iz Last.fm, boste morali ustvariti profil Last.fm. Za ustvarjanje računa obiščite <link href="http://www.last.fm/join">http://www.last.fm/join</link> ali v meniju Banshee izberite <guiseq><gui>Uredi</gui><gui>Možnosti</gui></guiseq>. Nato pritisnite zavihek <gui>Lastno viru</gui> in pritisnite spustni meni <gui>Vir</gui> in izberite <gui>Last.fm</gui> in izberite povezavo <em>Vpis v Last.fm</em></p>
   
-  <p>To enable Banshee to report the songs you play on your computer to Last.fm,
-  sign in to Last.fm in Banshee in the <gui>Source Specific</gui> preferences.
-  Enter your username and press the <gui>Log in to Last.fm</gui> button.  You 
-  will be directed to a Last.fm webpage in your browser to grant Banshee access.
-  Press the <gui>Yes, allow access</gui> link in your browser and you will be 
-  redirected to a webpage that displays a message that Banshee now has access to
-  Last.fm.  Return to Banshee and press the <gui>Finish Logging In</gui> button
-  to complete the process.
-  </p>
+  <p>Za omogočenje poročanja skladb v Banshee, ki se predvajajo na vašem računalniku, se v možnostih <gui>Lastno viru</gui> Banshee vpišite na Last.fm. Vnesite svoje uporabniško ime in pritisnite gumb <gui>Prijavi se v Last.fm</gui>. V svojem brskalniku boste usmerjeni na spletno stran Last.fm za dodeljevanje pravic Banshee. V svojem brskalniku kliknite na povezavo <gui>Da, dovoli dostop</gui> in preusmerjeni boste na spletno stran, ki bo prikazala sporočilo, da ima Banshee sedaj dostop do Last.fm.  Vrnite se v Banshee in pritisnite gumb <gui>Končanj prijavljanje</gui> za dokončanje opravila.</p>
   
   </section>
   
   <section id="songreporting">
-  <title>Enable Last.fm Song Reporting</title> 
-  <p>After you have successfully linked Banshee to your Last.fm profile, to 
-  enable Banshee to report the songs to your Last.fm profile, in the 
-  <gui>Source Specific</gui> tab in Banshee's preferences, press the 
-  <gui>Enable Song Reporting</gui> checkbox.  If you have an active internet
-  connection, Banshee will now send Last.fm information regarding the songs
-  you play.  To view your play history, visit your profile on the Last.fm 
-  website.  Last.fm will automatically update your music metadata if any of your
-  artist, song title or album information is incorrect.
-  </p>
+  <title>Omogoči poročanje skladb Last.fm</title> 
+  <p>Po tem, ko ste Banshee uspešno povezali s svojim profilom Last.fm za omogočitev poročanja skladb na svoj profil Last.fm v zavihku <gui>Lastno viru</gui> v možnostih Banshee pritisnite izbirno polje <gui>Omogoči poročanje skladb</gui>. V primeru, da imate dejavno internetno povezavo, bo Banshee sedaj poslal podatke Last. fm o skladbah, ki jih prevajate. Za ogled svoje zgodovine predvajanja obiščite svoj profil na spletišču Last.fm. Last.fm bo samodejno posodobil metapodatke vaše glasbe, če so podatki o izvajalcu, naslovu skladbe ali albumu nepravilni.</p>
   
   </section>
   
   <section id="lastfm-radio">
-  <title>Listen to Last.fm Radio</title> 
-  <p>Last.fm radio is free for residents of the United States, United Kingdom
-  and Germany.  Residents of other countries will have to pay for a premium 
-  account with Last.fm to listen to radio.  Premium members, in all countries,
-  also receive premium radio features: listening to playlists and stations of 
-  music you've loved or tagged.
-  </p>
+  <title>Poslušanje radia Last.fm</title> 
+  <p>Radio Last.fm je brezplačen za prebivalce Združenih držav Amerike, Združenega Kraljestva in Nemčije. Prebivalci drugih držav morajo plačati za premijski račun z Last.fm za poslušanje radia. Premijski člani v vseh državah prejmejo tudi zmožnosti premijskega radia: poslušanje seznamov predvajanja in postaj glasbe, ki vam je všeč ali ste jo označili.</p>
   
-  <p>In Banshee's context menu onthe left hand side, you will now have a 
-  Last.fm section, including your Lat.fm radio stations.  You will need an
-  active internet connection to listen to Last.fm radio.  Choose the radio
-  station you wish to listen to and Banshee will communicate with Last.fm
-  to populate songs for that radio station.  Press the <gui>Play</gui> button
-  in Banshee or <key>Spacebar</key> to start streaming a Last.fm radio
-  station.  You can also press the <gui>Next</gui> button in Banshee, 
-  <key>N</key> or choose <guiseq><gui>Playback</gui><gui>Next</gui></guiseq>
-  to play the next song in your radio station queue.
-  </p>
+  <p>V vsebinskem meniju  na levi strani Banshee boste imeli sedaj odsek Last.fm, vključno s svojimi radijskimi postajami Last.fm. Za poslušanje radia Last.fm boste potrebovali dejavno internetno povezavo.  Izberite radijsko postajo, ki jo želite poslušati. Banshee bo komuniciral z Last.fm za dodajanje skladb za to radijsko postajo. V Banshee pritisnite gumb <gui>Predvajaj</gui> ali <key>Preslednico</key> za začetek pretakanja radijske postaje Last.fm. Za predvajanje naslednje skladbe v čakalni vrsti svoje radijske postaje lahko pritisnete gumb <gui>Naslednja</gui>, tipko <key>N</key> ali izberite  <guiseq><gui>Predvajanje</gui><gui>Naslednja</gui></guiseq>.</p>
   
   </section>
 	
diff --git a/help/sl/manage-coverart.page b/help/sl/manage-coverart.page
index aea2421..58f34f8 100644
--- a/help/sl/manage-coverart.page
+++ b/help/sl/manage-coverart.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#manage"/>
     <link type="seealso" xref="tags"/>
-    <desc>Manage or change your albums cover art.</desc>
+    <desc>Upravljajte ali spremenite ovojnice svojih albumov.</desc>
     <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,7 +19,7 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Cover art</title>    
+  <title>Ovitki</title>    
   
   <p/>
   
diff --git a/help/sl/manage-playlists.page b/help/sl/manage-playlists.page
index 03cfe34..3bca60b 100644
--- a/help/sl/manage-playlists.page
+++ b/help/sl/manage-playlists.page
@@ -5,7 +5,7 @@
     <link type="guide" xref="index#manage"/>
     <link type="seealso" xref="tags"/>
     <link type="seealso" xref="coverart"/>
-    <desc>Create and manage playlists.</desc>
+    <desc>Ustvarjanje in upravljanje s seznami predvajanja.</desc>
     <revision pkgversion="1.6" version="0.1" date="2010-05-26" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -14,130 +14,70 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Playlists</title>    
+  <title>Seznami predvajanja</title>    
   
-  <p>Playlists allow you to create and save a list of music tracks to be played
-  in a specific order.  Playlists are convenient to create a list of your
-  favorite songs or to split your library into smaller lists that are easy
-  to browse through. Some portable media players even allow you to transfer the 
-  playlist so you can take it with you on the go.
-  </p>
+  <p>Seznami predvajanja vam omogočajo ustvarjanje in shranjevanje seznama skladb za predvajanjem v določenem vrstnem redu. Seznami predvajanja so priročni za ustvarjanje seznama vaših najljubših skladb ali za razdelitev knjižnice v manjše sezname skozi katere je lažje brskati. Nekateri prenosni predvajalniki večpredstavnosti vam omogočajo prenos seznama predvajanja, zato ga lahko vzamete s sabo.</p>
   
-  <p>Banshee supports normal playlists, which include songs you add to the
-  playlist, as well as smart playlists.  Smart Playlists are automatically 
-  generated playlists based on your listening habits, favorite music, or more.</p>
+  <p>Banshee podpira običajne sezname predvajanja, ki vključujejo skladbe, ki jih dodate na seznam predvajanja in pametne sezname predvajanja na osnovi vaših navad poslušanja, priljubljene glasbe in več.</p>
   
   <section id="manual">
   
-    <title>Normal Playlists</title>
+    <title>Običajni seznami predvajanja</title>
   
-    <p>A normal playlist is a list of songs that you add and manage.  You might
-    want to create your own list of songs by your favorite artist from 
-    multiple albums, your latest favorite songs, or an upbeat playlist to listen
-    to while you exercise.
-    </p>
+    <p>Običajen seznam predvajanja je seznam skladb, ki jih dodajate in upravljate. Morda želite ustvariti svoj lasten seznam skladb svojega priljubljenega izvajalca iz več albumov, svojih zadnjih priljubljenih skladb ali poskočen seznam predvajanja za poslušanje med telesno vadbo. </p>
     
-    <p>You can create a new playlist by pressing <keyseq><key>Control</key>
-    <key>N</key></keyseq>, from the menu choosing <guiseq><gui>Menu</gui>
-    <gui>New Playlist</gui></guiseq> or by selecing the track(s) you would like
-    to add to the playlist.  Select the track(s), right click them, and choose
-    <guiseq><gui>Add to Playlist</gui><gui>New Playlist</gui></guiseq>.
-    You can also drag and drop them to a new playlist by selcting the track(s) 
-    and dragging them to the left hand
-    window pane over <gui>Music</gui>.  As you drag it over <gui>Music</gui>,
-    a new option <gui><em>New Playlist</em></gui> will appear and you can drop
-    the track(s) over <gui><em>New Playlist</em></gui> to add them to the 
-    playlist.  You can repeat this process until you have added all the tracks
-    you want in the playlist.
-    </p>
+    <p>Nov seznam predvajanja lahko ustvarite s pritiskom <keyseq><key>Control</key><key>N</key></keyseq>, z izbiro <guiseq><gui>Meni</gui><gui>Nov seznam predvajanja</gui></guiseq> ali z izbiro skladb, ki jih želite dodati na seznam predvajanja. Izberite skladb-o/e, desno kliknite na njih in izberite <guiseq><gui>Dodaj na seznam predvajanja</gui><gui>Nov seznam predvajanja</gui></guiseq>. Skladbe lahko na nov seznam predvajanja tudi povlečete in spustite tako, da skladbe izberete in jih povlečete na levi pladenj okna nad <gui>Glasba</gui>. Ko boste skladbe povlekli nad <gui>Glasba</gui>, se bo pojavila nova možnost <gui><em>Nov seznam predvajanja</em></gui>. Za dodajanje skladb jih spustite nad  <gui><em>Nov seznam predvajanja</em></gui>. Opravilo lahko ponavljate toliko časa, dokler nimate na seznamu predvajanja vseh želenih skladb.</p>
 
-    <p>To give your playlist its own name, select the playlist and right click
-    on the playlist and press <gui>Rename Playlist</gui> and enter the name
-    of your playlist.
-    </p>
+    <p>Če želite seznamu predvajanja dati ime, ga izberite, nanj desno kliknite in pritisnite <gui>Preimenuj seznam predvajanja</gui> in vnesite ime svojega seznama predvajanja.</p>
     
-    <p>You can change the order of the playlist by dragging and dropping the
-    song to the new position in the playlist.  Songs can only be re-ordered
-    in the playlist when none of the columns are sorted.  To unsort a column,
-    press the column until the up or down arrow is no longer showing and
-    the column is blank and then re-order the playlist.
-    </p>
+    <p>Vrsti red seznama predvajanja lahko spremeniti z vlečenjem in spuščanjem skladb na nov položaj v seznamu predvajanja. Skladbe je mogoče v seznamu predvajanja preurejati le, če ni razvrščen noben od stolpcev. Za odstranitev razvrstitve stolpca, pritisnite stolpec tolikokrat, da puščica navzgor ali navzdol ni več prikazana in preuredite seznam predvajanja. </p>
     
-    <p>To remove a track from the playlist, select the track(s) you wish to 
-    remove.  Press the <key>Delete</key>, from the menu choose 
-    <guiseq><gui>Edit</gui><gui>Remove from Playlist</gui></guiseq> or right
-    click the track(s) with your mouse and press <gui>Remove from Playlist</gui>.
-    </p>
+    <p>Za odstranitev skladbe s seznama predvajanja izberite skladb-o/e, ki jih želite odstraniti. Pritisnite <key>Izbriši</key>, v meniju izberite <guiseq><gui>Uredi</gui><gui>Odstrani s seznama predvajanja</gui></guiseq> ali pa desno kliknite s svojo miško in pritisnite <gui>Odstrani s seznama predvajanja</gui>.</p>
   </section> 
   
   <section id="smartplaylists">
-    <title>Smart Playlist</title>
+    <title>Pameten seznam predvajanja</title>
     
-    <p>Smart Playlists allow you to quickly generate a dynamic playlist based
-    on a number of pre-set variables.  You can quickly create a new playlist
-    based on a specific artist, favorites or more.  
-    </p>
+    <p>Pametni seznami predvajanja vam omogočajo hitro ustvarjanje dinamičnih seznamov predvajanja na osnovni številnih pred-nastavljenih spremenljivk. Nov seznam predvajanja lahko ustvarite na osnovi določenega izvajalca, priljubljenih in več.</p>
     
-    <p>To create a new Smart Playlist, from the menu choose <guiseq>
-    <gui>Media</gui><gui>New Smart Playlist</gui></guiseq>.  You will be 
-    presented with a dialog to create a new Smart Playlist.  Enter
-    the name of your playlist and then choose the criteria your playlist 
-    should be based on.  You can choose from any field included in the song's 
-    meatadata, such as Album, Artist or Year.  Choose the criteria and then
-    choose from one of the following:
-    </p>
+    <p>Za ustvarjanje novega pametnega seznama predvajanj izberite <guiseq><gui>Večpredstavnost</gui><gui>Nov pameten seznam predvajanj</gui></guiseq>. Predstavljeno vam bo pogovorno okno za ustvarjanje novega pametnega seznama predvajanja. Vnesite ime svojega seznama predvajanja in izberite kriterije na katerih naj bo osnovan vaš seznam predvajanja.  Izbirate lahko med katerimikoli polji vključenimi v metapodatke skladbe kot so album, izvajalec ali leto. Izberite kriterije na nato storite nekaj od naslednjega:</p>
     
     <list>
-      <item><p>is</p></item>
-      <item><p>is not</p></item>  
-      <item><p>less than</p></item>
-      <item><p>more than</p></item>  
-      <item><p>at most</p></item>
-      <item><p>at least</p></item>  
+      <item><p>je</p></item>
+      <item><p>ni</p></item>  
+      <item><p>manj kot</p></item>
+      <item><p>več kot</p></item>  
+      <item><p>največ</p></item>
+      <item><p>najmanj</p></item>  
     </list>
     
-    <p>You can also press the <gui>+</gui> button to add an addition query
-    to the Smart Playlist.  For example, you could create a smart playlist
-    that includes all songs from 2010 that you rated 5 stars.  To create this
-    playlist you would choose:
-    </p>
+    <p>Pritisnete lahko tudi gumb <gui>+</gui> za dodajanje poizvedbe dodajanja v pameten seznam. Na primer ustvarite lahko pameten seznam predvajanja, ki vključuje vse skladbe iz leta 2010, ocenjene s 5 zvezdicami. Za ustvarjanje tega seznama predvajanja bi izbrali:</p>
     
   <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Year</gui></p></td> <td><p><gui>is</gui></p> </td> 
+    <td><p><gui>Leto</gui></p></td> <td><p><gui>je</gui></p> </td> 
     <td><p><gui>2010</gui></p></td>
   </tr>
   <tr>
-    <td><p><gui>Rating</gui></p></td> <td><p><gui>is</gui></p></td> 
-    <td><p><gui/>5 stars</p></td>
+    <td><p><gui>Ocena</gui></p></td> <td><p><gui>je</gui></p></td> 
+    <td><p><gui/>5 zvezdic</p></td>
   </tr>
   </table>
     
-    <p>You can then optionally select how many songs are included by pressing
-    the <gui>Limit</gui> to checkbox and choosing the number of songs to be
-    included.
-    </p>
+    <p>Izbirno lahko izberete koliko skladb je vključenih tako, da pritisnete izbirno polje <gui>Omeji</gui> in izberete število skladb, ki naj bodo vključene.</p>
   
-  <p>Banshee also includes smart playlists already created for 
-  you.  Press the <gui>Open in editor</gui> button to view how the playlist
-  created was or to modify it.  If you press <gui>Create and save</gui> the 
-  playlist will be automatically generated and saved for you.  The following
-  playlists are included:
-  </p>
+  <p>Banshee vključuje tudi pametne sezname predvajanja že ustvarjene za vas. Pritisnite gumb <gui>Odpri v urejevalniku</gui> za ogled kako je bil seznam predvajanja ustvarjen ali za njegovo spreminjanje. Če pritisnete <gui>Ustvari in shrani</gui>, bo seznam predvajanja samodejno ustvarjen in shranjen za vas. Vključeni so naslednji seznami predvajanja:</p>
   
   <list>
-    <title>Banshee Smart Playlists</title>
-    <item><p>Favorites (Songs rated four and five stars)</p></item>
-    <item><p>Recent Favorites (Songs listened to often in the past week)
-    </p></item>  
-    <item><p>Recently Added (Songs imported within the last week</p></item>
-    <item><p>Unheard (Songs that have not been played or skipped)</p></item>
-    <item><p>Neglected Favorites (Favorites not played in over two months)
-    </p></item>
-    <item><p>700 MB of Favorites (A data CD worth of favorite songs)</p></item>
-    <item><p>80 Minutes of Favorites (An audio CD worth of favorite songs)
-    </p></item>
-    <item><p>Unrated (Songs that haven't been rated)</p></item>
+    <title>Pametni seznami prevajanja Banshee</title>
+    <item><p>Priljubljene (skladbe, ocenjene s štirimi in petimi zvezdicami)</p></item>
+    <item><p>Nedavno priljubljene (skladbe pogosto poslušane v predhodnem tednu)</p></item>  
+    <item><p>Nedavno dodano (skladbe uvožene v zadnjem tednu)</p></item>
+    <item><p>Ne slišano (skladbe, ki niso bile predvajane ali preskočene)</p></item>
+    <item><p>Zapostavljene priljubljene (priljubljene, ki niso bile predvajanje v dveh mesecih)</p></item>
+    <item><p>700 MB priljubljenih (podatkovni CD priljubljenih skladb)</p></item>
+    <item><p>80 minut priljubljenih (zvočni CD priljubljenih skladb)</p></item>
+    <item><p>Neocenjeno (Skladbe, ki še niso bile ocenjene)</p></item>
   </list>
  
    </section> 
diff --git a/help/sl/manage-tags.page b/help/sl/manage-tags.page
index 1f45e91..b2bab12 100644
--- a/help/sl/manage-tags.page
+++ b/help/sl/manage-tags.page
@@ -5,7 +5,7 @@
     <link type="guide" xref="index#manage"/>
     <link type="seealso" xref="coverart"/>
     <link type="seealso" xref="playlists"/>
-    <desc>Edit and change music tags and metadata.</desc>
+    <desc>Uredite in spremenite oznake in metapodatke glasbe.</desc>
     <revision pkgversion="2.0" version="0.1" date="2010-05-09" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -20,59 +20,39 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
   
-  <title>Music Metadata</title>
+  <title>Metapodatki glasbe</title>
 
   <section id="metadata">
 
-  <title>Music metadata</title>    
+  <title>Metapodatki glasbe</title>    
   
-  	<p>Digital music contains metadata that stores information in the 
-  	music file including the artist, album, year recorded, genre, and more.
-  	Almost all music purchased over the internet will have the metadata
-  	already embedded and if you import music from CDs, Banshee will include
-  	the metadata when ripping the CD if available.  For more information
-  	on ripping CDs and including the metadata see the 
-  	<link xref="import"/>.</p>
+  	<p>Digitalna glasba vsebuje metapodatke, ki v glasbeni datoteki shranjujejo podrobnosti vključno z izvajalcem, albumom, letom snemanja, zvrstjo in več. Skoraj vsa glasba kupljena preko interneta bo imela metapodatke že vstavljene. Med uvažanjem glasbe s CD-jev, bo Banshee pri zajemanju CD-ja vključil metapodatke, če so na voljo. Za več podrobnosti o zajemanju CD-jev in vključevanju metapodatkov si oglejte <link xref="import"/>.</p>
   	
-  	<p>Popular metadata formats are ID3v1 and ID3v2 for MP3 files and
-  	Vorbis comments for OGG Vorbis files.</p>	
+  	<p>Priljubljene vrste metapodatkov sta ID3v1 in ID3v2 za datoteke MP3 in opombe Vorbis za datoteke OGG Vorbis.</p>	
   
-  	<p>If you have imported songs that do not contain metadata, 
-  	<app>Banshee</app> will display <gui>Unknown</gui> for most fields
-  	in the library. </p>
+  	<p>Če ste uvozili skladbe brez metapodatkov, bo <app>Banshee</app> prikazal <gui>Neznano</gui> za večino polj v knjižnici.</p>
   	
   </section>
 
   <section id="editmetadata"> 	
     
-    <title>Edit Your Metadata</title>
+    <title>Urejajte svoje metapodatke</title>
     
-    <p>You can change and edit the metadata of your songs.  Select the song or
-    songs you want to update and hit the <key>E</key>, choose
-    <guiseq><gui>Edit</gui><gui>Edit Track Information</gui></guiseq> from the menu, or use
-    your mouse and right click on the files and select
-    <gui>Edit Track Information</gui>.
-    </p>
+    <p>Metapodatke svojih skladb lahko spremenite in uredite. Izberite skladbo ali skladbe, ki jih želite posodobiti in pritisnite <key>E</key>, v meniju izberite <guiseq><gui>Uredi</gui><gui>Uredi podatke o  skladbi</gui></guiseq> ali z miško desno kliknite na datoteke in izberite <gui>Uredi podatke o  skladbi</gui></p>
     
-    <p>A dialog box will appear that shows the song's metadata and allow you to 
-    change or update it.  The default fields displayed include:</p>
+    <p>Pojavilo se bo polje pogovornega okna, ki prikazuje metapodatke skladbe in vam omgoča njihovo spremembo ali posodobitev. Privzeto prikazana polja vključujejo:</p>
     
     <list>
-      <item><p><gui>Track Title:</gui></p></item>
-      <item><p><gui>Track Artist</gui></p></item>
-      <item><p><gui>Album Title</gui></p></item>
-      <item><p><gui>Genre</gui></p></item>
-      <item><p><gui>Track Number</gui></p></item>
-      <item><p><gui>Disc Number</gui></p></item>
-      <item><p><gui>Year</gui></p></item>
+      <item><p><gui>Naslov skladbe:</gui></p></item>
+      <item><p><gui>Izvajalec skladbe</gui></p></item>
+      <item><p><gui>Naslov albuma</gui></p></item>
+      <item><p><gui>Zvrst</gui></p></item>
+      <item><p><gui>Številka skladbe</gui></p></item>
+      <item><p><gui>Številka diska</gui></p></item>
+      <item><p><gui>Leto</gui></p></item>
     </list>
     
-    <p>Update the song's information.  If you have selected multiple songs to
-    edit press the right arrow icon to the right of the <gui>Track Title</gui>
-    field or press the <gui>Forward</gui> button at the bottom of the dialog
-    when finished with each song.   When you have completed editing all metadata,
-    press <gui>Save</gui>.
-    </p>
+    <p>Posodobite podrobnosti o skladbi. Če ste izbrali več skladb za urejanje, pritisnite ikono desne puščice desno od polja <gui>Naslov skladbe</gui> ali pritisnite gumb <gui>Naprej</gui> na dnu pogovornega okna, ko boste končali z urejanjem skladbe. Ko boste dokončali urejanje vseh metapodatkov, pritisnite <gui>Shrani</gui>.</p>
    
   </section>
 
diff --git a/help/sl/play-queue.page b/help/sl/play-queue.page
index 0d39051..c0396bc 100644
--- a/help/sl/play-queue.page
+++ b/help/sl/play-queue.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#media"/>
     <link type="seealso" xref="play"/>
-    <desc>Add media to your play queue.</desc>
+    <desc>Dodajanje večpredstavnostnih datotek v  čakalno vrsto predvajanja.</desc>
     <revision pkgversion="1.6" version="0.1" date="2010-05-26" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -13,71 +13,41 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Play Queue</title>    
+  <title>Vrsta predvajanja</title>    
   
-  <p>The <gui>Play Queue</gui> allows you to add music to play in a sequential 
-  order.  You can add many tracks to let you listen to hours of music non-stop.
-  You can add individual tracks or entire albums, and sort or re-order them.</p>
+  <p><gui>Čakalna vrsta predvajanja</gui> vam omogoča dodajanje skladb za predvajanje v zaporednem vrstnem redu. Dodate lahko skladbe za ure neprekinjenega poslušanja skladb. Dodate lahko posamezne skladbe ali celotne albume in jih razvrstite ali preuredite.</p>
   
 <section id="addqueue">
 
-  <title>Add Music to the Play Queue</title>
+  <title>Dodajanje glasbe v čakalno vrsto predvajanja</title>
 
-  <p>From your music library, you will need to select the music tracks or albums
-  you want to add to the play queue.
-  </p>
+  <p>V svoji glasbeni knjižnici boste morali izbrati skladbe ali albume, ki jih želite dodati v čakalno vrsto predvajanja.</p>
   
-  <p>To add an entire album to the Play Queue, using your mouse press and hold
-  the album and drag the album over <gui>Play Queue</gui> in the far left 
-  window pane.
-  </p>
+  <p>Za dodajanje celotnega albuma v čakalno vrsto predvajanja s svojo miško pritisnite in držite album in ga povlecite nad <gui>Čakalna vrsta predvajanja</gui> v levem pladnju okna.</p>
   
-  <p>You can add music tracks to the Play Queue individually or as a group.
-  To add an individual file, drag and drop it over the <gui>Play Queue</gui>
-  in the far left window pane, or right click the track and choose 
-  <gui>Add to Play Queue</gui>.  
-  </p>
+  <p>Skladbe lahko v čakalno vrsto predvajanja dodate posamezno ali kot skupino. Za dodajanje posamezne datoteke jo povlecite in spustite nad <gui>Čakalno vrsto predvajanja</gui> v najbolj levem pladnju okna ali z desnim klikom na skladbo in izbiro <gui>Dodaj v čakalno vrsto predvajanja</gui>.</p>
   
-  <p>You can select multiple files by using your mouse and pressing 
-  <key>Control</key> and choosing each file with your mouse or 
-  select a range of files by
-  pressing <key>Shift</key> twice to select that range of files.  You can then
-  drag and drop it over the <gui>Play Queue</gui>
-  in the far left window pane or right click the tracks  and choose 
-  <gui>Add to Play Queue</gui>.
-  </p>
+  <p>Več datotek lahko izberete tako, da jih klikate z miško medtem ko držite tipko <key>Control</key> in s tem izberete posamezne datoteke ali pa izberete obseg datotek tako, da dvakrat pritisnete tipko <key>Shift</key>. Nato jih lahko povlečete in spustite nad <gui>Čakalno vrsto predvajanja</gui> v daljnem levem pladnju okna ali z desnim klikom skladb in izbiro <gui>Dodaj v čakalno vrsto predvajanja</gui>.  </p>
   
 </section>
 
 <section id="reorderqueue">
 
-  <title>Organize Your Play Queue</title>
+  <title>Organizacija vaše čakalne vrste predvajanja.</title>
 
-  <p>Your Play Queue is organized in the order of the tracks you added.  The
-  first tracks or albums you added to the queue will be the first to be played.
-  You can re-order your Play Queue by using your mouse and dragging and
-  dropping a track or group of tracks in the list.  Choose the track(s) you wish
-  to re-order with your mouse and release your mouse over the number or place
-  in the list you wish those files to be in the queue.
-  </p>
+  <p>Vaša čakalna vrsta predvajanja je organizirana v redu dodanih skladb. Prve skladbe ali albume, ki ste jih dodali v čakalno vrsto, bodo prvi predvajani. Svojo čakalno vrsto predvajanja lahko preuredite z vlečenjem in spuščanjem skladbe ali skupine skladb v seznamu predvajanja. Z miško izberite skladb-o/e, ki jih želite preurediti in svojo miško spustite nad številko ali mestom, kjer naj bodo te datoteke v čakalni vrsti predvajanja.</p>
 
 </section>  
   
 <section id="removequeue">
 
-  <title>Removing Tracks from the Play Queue</title>
+  <title>Odstranjevanje skladb s čakalne vrste predvajanja</title>
 
-  <p>You can remove an individual track, a group of tracks, or clear your entire
-  play queue.
-  </p>
+  <p>Odstranite lahko posamezno skladbo, skupino skladb ali počistite svojo celotno čakalno vrsto predvajanja.</p>
   
-  <p>To remove an individual track or group of tracks, select the track 
-  with your mouse and then press <key>Delete</key>.  
-  </p>
+  <p>Za odstranitev posamezne skladbe ali skupine skladb, skladbo izberite z miško in nato pritisnite <key>Izbriši</key>.</p>
   
-  <p>To clear your entire Play Queue, press the <gui>Clear</gui> button in the
-  upper right hand corner of the Play Queue.
-  </p>
+  <p>Za čiščenje svoje celotne čakalne vrste predvajanja pritisnite gumb <gui>Počisti</gui> v zgodnjem desnem kotu čakalne vrste predvajanja.</p>
   
 </section>      
 	
diff --git a/help/sl/play.page b/help/sl/play.page
index afee4ad..c751a16 100644
--- a/help/sl/play.page
+++ b/help/sl/play.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#media"/>
     <link type="seealso" xref="queue"/>
-    <desc>Play your videos and music files.</desc>
+    <desc>Predvajajte svoje video in glasbene datoteke.</desc>
     <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,80 +19,49 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
   
-  <title>Play Your Media</title>
+  <title>Predvajajte svoje datoteke večpredstavnosti</title>
 
   <section id="playmusic">
-  <title>Play your music</title>    
+  <title>Predvajajte svojo glasbo</title>    
   
-  <p>To play music in Banshee, choose the Music source.  The music library
-  will show you all artists in your music library, cover art for each album,
-  and a list of all songs in your library.</p>
+  <p>Za predvajanje glasbe v Banshee izberite vir glasba. Glasbena knjižnica vam bo prikazala vse izvajalce v vaši glasbeni knjižnici, ovojnice za vsak album in seznam vseh skladb v vaši knjižnici.</p>
   
-  <p>Choose the album or song you wish to play from the list of artists, albums
-  or use the search bar in the upper right hand corner of Banshee.
-  </p>
+  <p>S seznama izvajalcev izberite album ali skladbo, ki jo želite predvajati ali pa uporabite iskalno vrstico v zgornjem desnem kotu Banshee.</p>
   
-  <p>To start playing a song, use your mouse to double click the song name, 
-  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.
-  </p>
+  <p>Za začetek predvajanja skladbe dvokliknite na ime skladbe, pritisnite <key>Preslednico</key> ali v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>.</p>
   
-  <p>You can also start playing an album by choosing the album in the album
-  browser and pressing use your mouse to double click the song name, 
-  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.
-  </p>
+  <p>Album lahko začnete predvajati z izbiro albuma v brskalniku albumov in dvoklikom na ime skladbe, pritiskom <key>Preslednice</key> ali izbiro <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq> v meniju Banshee.</p>
   
-  <p>To play all songs by one artist, choose the artist in the artist browser
-  and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.
-  </p>
+  <p>Za predvajanje vseh skladb enega izvajalca izberite izvajalca v brskalniku izvajalcev in pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>.</p>
   
-  <p>Banshee also displays your Favorite albums (those you play the most),
-  Recent Favorites, Recently Added and Unheard music.  Choose the one
-  you wish to listen to and you can play songs from each.
-  </p>
+  <p>Banshee prikazuje tudi vaše priljubljene albume (tiste, ki jih največ predvajate), nedavno priljubljeno, nedavno dodano in ne slišano glasbo. Izberite seznam, ki ga želite poslušati in lahko boste predvajali skladbe z njega. </p>
   
   </section>
 
   <section id="playvideo">
-  <title>Play a video</title>    
+  <title>Predvajajte videoposnetke</title>    
   
-  <p>Your imported videos are listed alphabetically.  To play a video, 
-  choose the video you wish to play from the list and 
-  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  <p>Vaši uvoženi videi so razvrščeni po abecedi. Za predvajanje videa ga izberite na seznamu in pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>.</p>
   
-  <p>Banshee also shows your Favorite videos (those you watch the most)
-  and Unwatched videos.  Choose one and you can play a video from the list.</p>	
+  <p>Banshee prikazuje tudi vaše najljubše videoposnetke (tiste, ki jih največ gledate) in ne gledane videoposnetke. Izberite enega in lahko boste predvajali video s seznama. </p>	
   
   </section>
   
   <section id="playpodcast">
-  <title>Play a Podcast</title>    
+  <title>Predvajajte podcaste</title>    
   
-  <p>Podcasts shows you all Podcasts you're subscribed too, all Podcast
-  shows available, and the Podcast browser lists all Podcasts in order of 
-  newest first.</p>
+  <p>Vir podcasti vam prikaže vse podcaste na katere ste naročeni, vse razpoložljive oddaje podcastov in vse podcaste v vrstnem redu od novejšega proti starejšemu.</p>
   
-  <p>To play a Podcast, 
-  choose the Podcast you wish to play from the list and 
-  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  <p>Za predvajanja podcasta s seznama izberite podcast, ki ga želite predvajati, ter pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>.</p>
   
   </section>
   
   <section id="playradio">
-  <title>Play an internet radio station</title>    
+  <title>Predvajajte internetno radijsko postajo</title>    
   
-  <p>The Radio source shows you all internet radio stations you have added 
-  to Banshee alphabetically.
-  </p>
+  <p>Vir radio vam prikaže vse internetne radijske postaje, ki ste jih dodali v Banshee v abecednem vrstnem redu.</p>
   
-  <p>To play an internet radio station, 
-  choose the radio station you wish to play from the list and 
-  press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui>
-  <gui>Play</gui></guiseq> from the Banshee menu.</p>
+  <p>Za predvajanje internetne radijske postaje s seznama izberite radijsko postajo, ki jo želite predvajati, ter pritisnite <key>Preslednico</key> ali v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>.</p>
   
   </section>    
 	
diff --git a/help/sl/rb-import.page b/help/sl/rb-import.page
index b419feb..5f434d4 100644
--- a/help/sl/rb-import.page
+++ b/help/sl/rb-import.page
@@ -4,10 +4,10 @@
   <info>
     <link type="guide" xref="import#plugins"/>
     <revision pkgversion="1.6" version="1.6" date="2010-05-31" status="stub"/>
-    <desc>Import music and categorizations from the <app>Rhythmbox</app> music player.</desc>
+    <desc>Uvozite glasbo in kategorizacije iz predvajalnika glasbe <app>Rhythmbox</app>. </desc>
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Import your <app>Rhythmbox</app> library</title>
+  <title>Uvozite svojo knjižnico <app>Rhythmbox</app></title>
 
 </page>
diff --git a/help/sl/search.page b/help/sl/search.page
index be2c1f7..58470a8 100644
--- a/help/sl/search.page
+++ b/help/sl/search.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#manage"/>
     <link type="seealso" xref="sort"/>
-    <desc>Search your media and perfom basic queries.</desc>
+    <desc>Iščite po svojih večpredstavnostnih datotekah in izvedite osnovne poizvedbe.</desc>
     <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,98 +19,69 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Searching your Banshee Library</title>    
+  <title>Iskanje po vaši knjižnici Banshee</title>    
   
-  <p>Banshee features a powerful search language.  You can search your 
-  library quickly and easily with basic search terms or perform detailed
-  searches with Banshee's advanced search terminology.</p>
+  <p>Banshee vsebuje zmogljiv iskalni jezik. Po svoji knjižnici lahko iščete hitro in enostavno z osnovnimi iskalnimi izrazi ali izvedete podrobna iskanja z napredno iskalno terminologijo Banshee. </p>
   
-  <p>To perform a search of your media in Banshee, press the <key>S</key> or
-  click the <gui>Search</gui> box in the upper right hand corner of the Library
-  view in Banshee.
-  </p>
+  <p>Za izvedbo iskanja vaše večpredstavnosti v Banshee pritisnite <key>S</key> ali kliknite na polje <gui>Iskanje</gui> v zgornjem desnem kotu pogleda knjižnica v Banshee</p>
   
-  <p>A search query consists of some basic terms, for example, 
-  <em>dave matthews</em>.  By entering <em>dave matthews</em> in the search box,
-   Banshee will search all metatdata fields including Track Title, Album Title,
-   Album Artist, Year, etc.  Any track whose metadata includes <em>dave</em> 
-   and <em>matthews</em> will be returned.  Search terms are case, meaningyou don't have to capitalize.  <em>dave</em>, <em>Dave</em>, and <em>DAVE</em>
-   all mean the same thing when searching.</p>
+  <p>Iskalna poizvedba je sestavljena iz nekaj osnovnih nizov na primer <em>janez novak</em>. Če v iskalno polje vnesete <em>janez novak</em>, bo Banshee preiskal vsa polja metapodatkov, vključno z naslovom skladbe, naslovom albuma, izvajalcem albuma, letom, itd. Vsaka skladba katere metapodatki vsebujejo <em>janez</em> in <em>novak</em> bo vrnjena kot rezultat. Iskalni izrazi so neodvisni od velikosti črk. <em>janez</em>, <em>Janez</em> in <em>JANEZ</em> med iskanjem pomenijo enako stvar.</p>
 
 <section id="operators">
-  <title>Basic Operators</title>
-  <p>Operators can be placed between any two search words or placed before a 
-  search word.  The default operation is <gui>AND</gui> and is used when
-  no other operators are used between two search terms.  Because it is the
-  default, there is no explicit AND operator.</p>
+  <title>Osnovni operatorji</title>
+  <p>Med katerekoli dve iskalni besedi ali pred iskalno besedo je mogoče postaviti operatorje. Privzeti operator je <gui>IN</gui>, ki se uporablja, ko se ne uporablja noben drug operator med dvema iskalnima nizoma. Ker IN je privzeti operator, izreci operator IN ne obstaja.</p>
   
-  <p>Other basic operators include <gui>OR</gui> and <gui>NOT</gui>.  Together,
-  these three operations can yield very powerful queries to help you search
-  your media.</p>
+  <p>Druga osnovna operatorja sta <gui>ALI</gui> in <gui>NE</gui>. Skupaj lahko ti trije operatorji tvorijo zmogljive poizvedbe, ki vam pomagajo iskati vaše večpredstavnostne datoteke.</p>
   
 </section>
 
 <section id="logical">
-  <title>Logical Operators and Examples</title>
-  <p>The following is a list of logical operators and examples of the search
-  results when searching using them.</p>
+  <title>Logični operatorji in primeri</title>
+  <p>Sledi seznam logičnih operatorjev in iskalnih rezultatov pri njihovi uporabi.</p>
   
   <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Operator</gui></p></td>  <td><p><gui>Description</gui></p></td>
+    <td><p><gui>Operator</gui></p></td>  <td><p><gui>Opis</gui></p></td>
   </tr>
   <tr>
-    <td><p><em>default</em>, <em>white space</em></p></td> <td><p>
-    Search for two terms with a space between the two words or terms.</p></td>
+    <td><p><em>privzeto</em>, <em>presledek</em></p></td> <td><p>Iščite za dva izraza s presledkom med dvema besedama ali izrazoma.</p></td>
   </tr>
   <tr>
-    <td><p>OR, or, <key>|</key>, <key>,</key></p></td> <td><p>
-    Search results will be two terms with either result in any field.</p></td>
+    <td><p>OR, or, <key>|</key>, <key>,</key></p></td> <td><p>Rezultat iskanja bosta bila dva izraza s katerimkoli rezultatom v kateremukoli polju.</p></td>
   </tr>
   <tr>
     <td><p>NOT, not,<key>-</key></p></td> <td><p>
-    Do not display search results with any search team that follows the 
+    Do not display search results with any search term that follows the 
     operator of NOT, not,<key>-</key>.</p></td>
   </tr>  
          
 </table>
 
-  <p>Examples of logical operations include:</p>
+  <p>Primeri logičnih operacij vključujejo:</p>
   
   <table frame="all" rules="rows" shade="rows">
   <tr>
-    <td><p><gui>Query</gui></p></td>  <td><p><gui>Description</gui></p></td>
+    <td><p><gui>Poizvedba</gui></p></td>  <td><p><gui>Opis</gui></p></td>
   </tr>
   <tr>
-    <td><p>dave matthews</p></td> <td><p>
-    Matches any fields in a track containing both <em>dave</em> and 
-    <em>matthews</em>.</p></td>
+    <td><p>janez novak</p></td> <td><p>Ujema se z vsemi polji v skladbi, ki vsebujejo tako <em>janez</em> kot <em>novak</em>.</p></td>
   </tr>
   <tr>
-    <td><p>dave, matthews</p></td> <td><p>
-    Matches any fields in a track containing both <em>dave</em> or
-    <em>matthews</em>.</p></td>
+    <td><p>janez, novak</p></td> <td><p>Ujema se z vsemi polji v skaladbi, ki vsebujejo <em>janez</em> ali <em>novak</em>.</p></td>
   </tr>
   <tr>
-    <td><p>dave or matthews</p></td> <td><p>
-    Matches any fields in a track containing both <em>dave</em> or
-    <em>matthews</em>.</p></td>
+    <td><p>janez ali novak</p></td> <td><p>Ujema se z vsemi polji v skaladbi, ki vsebujejo <em>janez</em> ali <em>novak</em>.</p></td>
   </tr> 
   <tr>
-    <td><p>dave | matthews</p></td> <td><p>
-    Matches any fields in a track containing both <em>dave</em> or
-    <em>matthews</em>.</p></td>
+    <td><p>janez | novak</p></td> <td><p>Ujema se z vsemi polji v skaladbi, ki vsebujejo <em>janez</em> ali <em>novak</em>.</p></td>
   </tr>       
   <tr>
-    <td><p>-"dave matthews"</p></td> <td><p>
-    Displays all tracks whose fields do not containt <em>dave
-    matthews</em>.</p></td>
+    <td><p>- "janez novak"</p></td> <td><p>Prikaže vse skladbe, katerih polja ne vsebujejo <em>janez novak</em>.</p></td>
   </tr> 
   
   </table> 
   
-  <p>For more information on performing more complex search queries,
-  see the <link xref="adv-search"/> page.</p>
+  <p>Za več podrobnosti o izvajanju bolj zapletenih poizvedb iskanja si oglejte stran <link xref="adv-search"/>.</p>
   
 </section>
 	
diff --git a/help/sl/sl.po b/help/sl/sl.po
index ce04735..d844571 100644
--- a/help/sl/sl.po
+++ b/help/sl/sl.po
@@ -2,15 +2,16 @@
 # Copyright (C) 2009 banshee COPYRIGHT HOLDER
 # This file is distributed under the same license as the banshee package.
 #
-# Ime Priimek <email>, leto
+# Andrej Žnidaršič <andrej.znidarsic at gmail.com>, 2010.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: banshee help master\n"
-"POT-Creation-Date: 2010-10-17 09:00+0000\n"
-"PO-Revision-Date: 2010-10-17 12:12+0100\n"
-"Last-Translator: Matej Urbančič <mateju at svn.gnome.org>\n"
+"POT-Creation-Date: 2010-11-09 02:38+0000\n"
+"PO-Revision-Date: 2010-11-09 17:58+0100\n"
+"Last-Translator: Andrej Žnidaršič <andrej.znidarsic at gmail.com>\n"
 "Language-Team: Slovenian GNOME Translation Team <gnome-si at googlegroups.com>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -28,7 +29,7 @@ msgstr "@@image: 'figures/banshee.png'; md5=THIS FILE DOESN'T EXIST"
 
 #: C/ui.page:8(desc)
 msgid "An overview of <app>Banshee's</app> user interface."
-msgstr ""
+msgstr "Pregled uporabniškega vmesnika <app>Banshee</app>."
 
 #: C/ui.page:12(name)
 #: C/sync.page:12(name)
@@ -76,731 +77,731 @@ msgstr "pcutler at gnome.org"
 
 #: C/ui.page:24(title)
 msgid "Introduction to the Banshee User Interface"
-msgstr ""
+msgstr "Uvod v uporabniški vmesnik Banshee"
 
 #: C/ui.page:27(title)
 #: C/introduction.page:43(title)
 msgid "<gui>Banshee Media Player</gui> window"
-msgstr ""
+msgstr "Okno <gui>Banshee predvajalnik večpredstavnostnih datotek</gui>"
 
 #: C/ui.page:28(app)
 #: C/introduction.page:44(app)
 #: C/index.page:21(title)
 msgid "Banshee Media Player"
-msgstr ""
+msgstr "Banshee predvajalnik večpredstavnostnih datotek"
 
 #: C/ui.page:30(p)
 #: C/introduction.page:46(p)
 msgid "<app>Banshee</app> library interface"
-msgstr ""
+msgstr "Vmesnik knjižnice <app>Banshee</app>"
 
 #: C/ui.page:35(title)
 msgid "Sources"
-msgstr ""
+msgstr "Viri"
 
 #: C/ui.page:36(p)
 msgid "Your music and video sources are shown on the left in Banshee. The sources give you quick access to your Play Queue, Music, Videos, Amazon, Last.fm, Podcasts and more."
-msgstr ""
+msgstr "Viri vaše glasbe in videov so v Banshee prikazani na levi.  Viri vam omogočajo hiter   dostop do vaše predvajalne vrste, Glasbe, Videov, Amazona, Last.fm, Podcastov in več.                "
 
 #: C/ui.page:42(p)
 msgid "The menu choices will change depending on the source you have chosen. For example, to use the menu to import a Podcast, you will need to choose the Podcast source. The menu option for importing a Podcast is not available when viewing the video or music library."
-msgstr ""
+msgstr "Izbire menija se bodo spremenile glede na izbrani vir. Na primer, če hočete videti meni za uvoz podcasta, boste morali izbrati vir Podcast. Možnost menija za uvažanje podcasta ni na voljo pri ogledovanju video ali glasbene knjižnice."
 
 #: C/ui.page:50(title)
 msgid "Library Browser"
-msgstr ""
+msgstr "Brskalnik knjižnice"
 
 #: C/ui.page:51(p)
 msgid "When you select a music or video source from Sources, Banshee will display your content in the Library browser. Depending on the source you choose, Banshee can display your music or video library, Podcast subscriptions or even the Amazon Music Store to allow you to buy music."
-msgstr ""
+msgstr "Ko iz virov izberete vir glasbe ali videa, bo Banshee vašo vsebino prikazal v brskalniku knjižnice. Glede na izbrani vir lahko Banshee prikaže vašo glasbeno ali video knjižnico, naročila podcastov ali celo glasbeno trgovino Amazon, ki vam omogoča nakup slabe."
 
 #: C/ui.page:58(title)
 msgid "Now Playing View"
-msgstr ""
+msgstr "Pogled sedaj se predvaja"
 
 #: C/ui.page:59(p)
 msgid "Helpful when using Banshee in full screen mode, the Now Playing mode hides the library to give you a larger view of the music or video you're watching. When listening to music, the Now Playing view will show you the artist name, album and cover art if available. If you are watching a video, Banshee will display the video."
-msgstr ""
+msgstr "Način Predvaja se skrije knjižnico in vam da večji pogled glasbe in videov, ki jih gledate. Zato je uporaben v celozaslonskem načinu. Med poslušanjem glasbe vam bo pogled Predvaja se prikazal ime izvajalca, album in ovitek, če je na voljo. Če gledate video, bo Banshee prikazal video."
 
 #: C/ui.page:65(p)
 msgid "To change Now Playing to hide the Banshee user interface and use the full screen mode, you can press the <key>F</key>, press the <gui>Fullscreen</gui> button in the upper right hand corner of Banshee, or choose <guiseq>View<gui/>Fullscreen<gui/></guiseq> to start Fullscreen mode."
-msgstr ""
+msgstr "Za skritje uporabniškega vmesnika Banshee in uporabo celozaslonskega načina lahko pritisnete <key>F</key>, pritisnete gumb <gui>Celozaslonski način</gui> v zgornjem desnem kotu programa ali izberete <guiseq><gui>Pogled<gui/><gui>Celozaslonski način<gui/></guiseq>"
 
 #: C/ui.page:74(title)
 msgid "Library"
-msgstr ""
+msgstr "Knjižnica"
 
 #: C/ui.page:75(p)
 msgid "The Library view in Banshee will change depending on the Source you have chosen. The Music Library will display cover art, artists in your library, and list of songs. The Podcast Library will display your Podcast subscriptions, podcasts that are downloaded or not downloaded, and all, new or old podcasts. Please see each Source's help page for detailed information on managing a source."
-msgstr ""
+msgstr "Pogled knjižnice se bo v Banshee spremenil glede na vaš izbrani vir. Glasbena knjižnica bo prikazala ovitke, izvajalce v vaši knjižnici in seznam skladb. Knjižnica podcastov bo prikazala vaša naročila podcastov, prejete in ne prejete podcaste in vse, nove in stare podcaste. Oglejte si stran pomoči vsakega vira za podrobnosti o upravljanju virov. "
 
 #: C/sync.page:9(desc)
 msgid "Sync your media to a portable media player or smartphone."
-msgstr ""
+msgstr "Uskladite svoje večpredstavnostne datoteke s prenosnim večpredstavnostnim predvajalnikom ali pametnim telefonom."
 
 #: C/sync.page:24(title)
 msgid "Sync"
-msgstr ""
+msgstr "Usklajevanje"
 
 #: C/sync.page:26(p)
 msgid "Banshee supports syncing your music to portable media players and smartphones. You can add specific music tracks, albums or playlist or allow Banshee to keep your music player in sync with your entire library. After your player is connected to your computer you can also play back the songs on your portable player in Banshee. When syncing music in a lossless format, such as FLAC, Banshee will automatically transcode your music for you to a lossy format such as Ogg Vorbis or MP3, if you have the correct codecs installed."
-msgstr ""
+msgstr "Banshee podpira usklajevanje vaše glasbe s prenosnimi večpredstavnostnimi predvajalniki in pametnimi telefoni. Dodate lahko določene skladbe, albume ali seznam predvajanja ali pa Banshee dovolite usklajevanje celotne knjižnice s svojim glasbenim predvajalnikom. Ko je vaš predvajalnik povezan na računalnik lahko skladbe na prenosnem predvajalniku predvajate v Banshee. Med usklajevanjem glasbe vrste brez izgub kot je FLAC, bo Banshee vašo glasbo samodejno prekodiral v vrsto z izgubai kot je Ogg Vorbis ali MP3, če imate nameščene pravilne kodeke."
 
 #: C/sync.page:37(title)
 msgid "Device Support"
-msgstr ""
+msgstr "Podpora naprav"
 
 #: C/sync.page:38(p)
 msgid "Banshee supports almost all modern portable music players and smartphones with the notable exception of the Apple iPhone, iPad and iPod Touch."
-msgstr ""
+msgstr "Banshee podpira skoraj vse nove prenosne predvajalnike glasbe z izjemo Apple iPhone, iPad in iPod Touch."
 
 #: C/sync.page:42(p)
 msgid "When you plug your device in, Banshee will display it in the left menu. Pressing the device icon will take you to your device home page in Banshee displaying your sync preferences."
-msgstr ""
+msgstr "Ko vklopite svojo napravo, jo bo Banshee prikazal v levem meniju. Pritisk na ikono naprave vas bo odpeljal na domačo stran naprave v Banshee, ki bo prikazala vaše možnosti usklajevanja."
 
 #: C/sync.page:50(title)
 msgid "Sync Your Music"
-msgstr ""
+msgstr "Uskladite svojo glasbo"
 
 #: C/sync.page:51(p)
 msgid "You can choose to manage the media on your portable music by having Banshee automatically sync it or manage your music and media manually."
-msgstr ""
+msgstr "Večpredstavnostne datoteke na svojem prenosnem predvajalniku glasbe lahko upravljate s samodejnim usklajevanjem Banshee ali pa s svojo glasbo in večpredstavnostne datoteke upravljate ročno."
 
 #: C/sync.page:56(p)
 msgid "Choose your device from the Banshee menu and then choose how you want to sync your media, including:"
-msgstr ""
+msgstr "Izberite svojo napravo iz menija Banshee in nato izberite kako želite uskladiti svoje večpredstavnostne datoteke, vključno z:"
 
 #: C/sync.page:60(p)
 msgid "Music"
-msgstr ""
+msgstr "Glasba"
 
 #: C/sync.page:61(p)
 msgid "Audiobooks"
-msgstr ""
+msgstr "Zvočne knjige"
 
 #: C/sync.page:62(p)
 msgid "Videos"
-msgstr ""
+msgstr "Videi"
 
 #: C/sync.page:63(p)
 msgid "Podcast"
-msgstr ""
+msgstr "Podcast"
 
 #: C/sync.page:66(p)
 msgid "From the dropdown menu next to each of the media, choose from:"
-msgstr ""
+msgstr "V spustnem meniju poleg vsakega medija izberite iz:"
 
 #: C/sync.page:69(p)
 msgid "Manage manually"
-msgstr ""
+msgstr "Upravljajte ročno"
 
 #: C/sync.page:70(p)
 msgid "Sync entire library"
-msgstr ""
+msgstr "Uskladi celotno knjižnico"
 
 #: C/sync.page:74(p)
 msgid "If you choose to sync your entire library automatically with your portable media player make sure your portable media player has enough storage space. If your library is larger than the space on your portable media player, Banshee will sync media until your player is full and then stop."
-msgstr ""
+msgstr "V primeru, da izberete samodejno usklajevanje vaše celotne knjižnice s svojim prenosnim predvajalnikom glasbe, se prepričajte da ima prenosni predvajalnik na voljo dovolj prostora. V primeru, da je vaša knjižnica večja od prostora na vašem prenosnem predvajalniku glasbe, bo Banshee usklajeval večpredstavnostne datoteke dokler vaš predvajalnik in poln in se nato zaustavil."
 
 #: C/sync.page:82(p)
 msgid "If you have created playlists or smart playlists in your music library, they will also be displayed as a sync option for Music. This can be helpful when creating smart playlists, as smart playlists will automatically update as new content is added based on the playlist rules, and Banshee will sync the new playlist to your device every time you plug it in."
-msgstr ""
+msgstr "V primeru, da ste v svoji glasbeni knjižnici ustvarili sezname predvajanja , bodo bili prikazani tudi kot možnost usklajevanja za glasbo. To je lahko uporabno pri ustvarjanju pametnih seznamov, saj se bodo pametni seznami ob dodajanju nove vsebine na osnovi pravil seznama predvajanja samodejno posodabljali  . Banshee bo nov seznam predvajanja uskladil z napravo vsakič, ko jo priklopite. "
 
 #: C/sync.page:89(p)
 msgid "Banshee will display the total hard drive space of your portable music player in a graph in the bottom center of Banshee. The graph will show you how much space is taken by audio files, video, other and free space. Directly below that Banshee will show you how many total items are stored on your portable music player, how many hours or days of listening that is equal to, and total space used."
-msgstr ""
+msgstr "Banshee bo prikazal celoten prostor na trdem disku vašega prenosnega predvajalnika glasbe v grafu na spodnjem delu Banshee. Graf bo prikazal koliko prostora zasedajo zvočne, video in druge datoteke, ter koliko prostora je še praznega. Neposredno pod tem vam bo Banshee prikazal koliko je vseh predmetov shranjenih na vašem prenosnem predvajalniku glasbe, koliko uram ali dnem predvajanja to ustreza in koliko prostora je porabljenega."
 
 #: C/sync.page:100(title)
 msgid "Sync Your Entire Library"
-msgstr ""
+msgstr "Uskladite svojo celotno knjižnico"
 
 #: C/sync.page:101(p)
 msgid "You can drag and drop media to your portable music player form Banshee. Select the file or files you want to copy to your portable media player and then press and hold your right mouse button and drag the file(s) to your portable media player icon in Banshee. This will copy the files to your device."
-msgstr ""
+msgstr "Večpredstavnostne datoteke lahko iz Banshee spustite v svoj prenosni predvajalnik glasbe. Izberite datoteko ali datoteke, ki jih želite prekopirati na svoj prenosni predvajalnik glasbe in nato pritisnite in držite desni miškin gumb in povlecite datotek-o/e na ikono svojega prenosnega predvajalnika v Banshee. To bo datoteke skopiralo na vašo napravo.  "
 
 #: C/sync.page:108(p)
 msgid "If your music library is encoded in a format that your portable media player does not support, such as OGG or FLAC, and you have the necessary codecs installed, Banshee can automatically transcode these files to MP3 when transferring to your portable media player. Check with your Linux distribution for the necessary codecs as it is outside the scope of this help and varies by distribution."
-msgstr ""
+msgstr "V primeru da je vaša glasbena knjižnica vrste, ki je vaš prenosni večpredstavnostni prevajalnik ne podpira (na primer OGG ali FLAC) in imate nameščene zahtevane kodeke, lahko Banshee te datoteke samodejno med prenašanjem na veš prenosni predvajalnik večpredstavnosti prekodira v MP3. Za pomoč pri namestitvi kodekov si oglejte dokumentacijo distribucije, saj je izven obsega te pomoči in se med distribucijami razlikuje."
 
 #: C/sync.page:117(p)
 msgid "You may need to eject your device to load the files correctly on your portable music player. To eject your device in Banshee, using your mouse right click the device in the Banshee menu and press <gui>Disconnect</gui>."
-msgstr ""
+msgstr "Morda boste morali svojo napravo izvreči za pravilno nalaganje datotek na svoj prenosni predvajalnik glasbe. Za izvrz svoje naprave v Banshee z miško v meniju Banshee desno kliknite na napravo in pritisnite <gui>Odklopi</gui>."
 
 #: C/sync.page:127(title)
 msgid "Play Music From Your Portable Music Player"
-msgstr ""
+msgstr "Predvajajte glasbo s svojega prenosnega predvajalnika glasbe"
 
 #: C/sync.page:128(p)
 msgid "You can play music stored on your portable music player directly in Banshee. Choose your player in the Banshee menu on the left and your portable music player's library will be displayed. You can then play music in Banshee just as you would music in your own library."
-msgstr ""
+msgstr "Glasbo shranjeno na prenosnem predvajalniku glasbe lahko predvajate neposredno v Banshee. Izberite svoj predvajalnik v meniju Banshee na levi in prikazana bo knjižnica vašega predvajalnika glasbe. Nato lahko v Banshee predvajate glasbo kot bi jo predvajali v svoji lastni knjižnici."
 
 #: C/sync.page:135(title)
 msgid "Remove Music From your Portable Music Player"
-msgstr ""
+msgstr "Odstranite glasbo iz svojega prenosnega predvajalnika glasbe"
 
 #: C/sync.page:136(p)
 msgid "To remove songs stored on your portable music player, choose your player in Banshee to view its library. Then choose the tracks you would like to remove and right click the tracks and choose \"Delete\" or from the menu choose <guiseq><gui>Edit</gui><gui>Delete</gui></guiseq>."
-msgstr ""
+msgstr "Za odstranitev skladb shranjenih na prenosnem predvajalniku glasbe v Banshee izberite svoj predvajalnik za ogled njegove knjižnice. Nato izberite skladbe, ki jih želite izbrisati in izberite \"Izbriši\" ali v meniju izberite <guiseq><gui>Uredi</gui><gui>Izbriši</gui></guiseq>."
 
 #: C/sync.page:142(p)
 msgid "Deleting files from your portable music will permanently remove the files and you will not be able to recover them."
-msgstr ""
+msgstr "Izbris datotek z vašega prenosnega glasbenega predvajalnika bo trajno izbrisal datoteke in ne boste jih mogli obnoviti."
 
 #: C/sort.page:9(desc)
 msgid "Sort your media and add additional columns."
-msgstr ""
+msgstr "Razvrstite svoje večpredstavnostne datoteke in dodajte dodatne stolpce."
 
 #: C/sort.page:24(title)
 msgid "Sort your media"
-msgstr ""
+msgstr "Razvrstite svoje večpredstavnostne datoteke"
 
 #: C/sort.page:28(title)
 msgid "Adding Columns"
-msgstr ""
+msgstr "Dodajanje stolpcev"
 
 #: C/sort.page:30(p)
 msgid "As your library grows, you may want to sort your library view to play search or view certain songs, artists, or albums."
-msgstr ""
+msgstr "Medtem ko vaša knjižnica raste, boste morda svoj pogled knjižnice želeli razvrstiti za predvajanje ali ogled določenih skladb, izvajalcev ali albumov."
 
 #: C/sort.page:34(p)
 msgid "You can add additional columns to the library view in <app>Banshee</app> to give you more information about the songs and also allow you to sort by. By default, Banshee displays columns for songs including <gui>Name</gui>, <gui>Artist</gui>, <gui>Album</gui> and <gui>Time</gui>. To add additional columns, using your mouse right click on any of the columns and Banshee will display all available column to choose from. Click the checkbox next to the name of the column you wish to add to the library view."
-msgstr ""
+msgstr "Pogledu knjižnice v <app>Banshee</app> lahko dodatne dodatne stolpce, ki vam dajo več podrobnosti o skladbah in vam dovolijo razvrščanje. Privzeto Banshee prikazuje stolpce skladb <gui>Ime</gui>, <gui>Izvajalec</gui>, <gui>Album</gui> in <gui>Čas</gui>. Za dodajanje dodatnih stolpcev z miško desno kliknite na katerikoli stolpec in Banshee bo prikazal vse razpoložljive stolpce. Kliknite izbirno polje poleg imena stolpca, ki ga želite dodati v pogled knjižnice."
 
 #: C/sort.page:46(title)
 msgid "Sorting Columns"
-msgstr ""
+msgstr "Razvrščanje stolpcev"
 
 #: C/sort.page:47(p)
 msgid "You can sort your library by using your mouse to click on any of the columns displayed in library view. If you wish to sort your music library by Artist, click the <gui>Artist</gui> column header and Banshee will automically sort that column alphabetically. Clicking the <gui>Artist</gui> column again will sort the column in reverse alphabetical order."
-msgstr ""
+msgstr "Svojo knjižnico lahko razvrstite tako, da z miško kliknete na enega od stolpcev prikazanih v pogledu knjižnice. Če glasbeno knjižnico razvrstiti po izvajalcu, kliknite na glavo stolpca <gui>Izvajalec</gui> in Banshee bo stolpec samodejno razvrstil po abecedi. Ponoven klik na <gui>Izvajalec</gui> bo stolpec razvrstil v nasprotnem abecednem redu."
 
 #: C/search.page:9(desc)
 msgid "Search your media and perfom basic queries."
-msgstr ""
+msgstr "Iščite po svojih večpredstavnostnih datotekah in izvedite osnovne poizvedbe."
 
 #: C/search.page:24(title)
 msgid "Searching your Banshee Library"
-msgstr ""
+msgstr "Iskanje po vaši knjižnici Banshee"
 
 #: C/search.page:26(p)
 msgid "Banshee features a powerful search language. You can search your library quickly and easily with basic search terms or perform detailed searches with Banshee's advanced search terminology."
-msgstr ""
+msgstr "Banshee vsebuje zmogljiv iskalni jezik. Po svoji knjižnici lahko iščete hitro in enostavno z osnovnimi iskalnimi izrazi ali izvedete podrobna iskanja z napredno iskalno terminologijo Banshee. "
 
 #: C/search.page:30(p)
 msgid "To perform a search of your media in Banshee, press the <key>S</key> or click the <gui>Search</gui> box in the upper right hand corner of the Library view in Banshee."
-msgstr ""
+msgstr "Za izvedbo iskanja vaše večpredstavnosti v Banshee pritisnite <key>S</key> ali kliknite na polje <gui>Iskanje</gui> v zgornjem desnem kotu pogleda knjižnica v Banshee"
 
 #: C/search.page:35(p)
 msgid "A search query consists of some basic terms, for example, <em>dave matthews</em>. By entering <em>dave matthews</em> in the search box, Banshee will search all metatdata fields including Track Title, Album Title, Album Artist, Year, etc. Any track whose metadata includes <em>dave</em> and <em>matthews</em> will be returned. Search terms are case, meaningyou don't have to capitalize. <em>dave</em>, <em>Dave</em>, and <em>DAVE</em> all mean the same thing when searching."
-msgstr ""
+msgstr "Iskalna poizvedba je sestavljena iz nekaj osnovnih nizov na primer <em>janez novak</em>. Če v iskalno polje vnesete <em>janez novak</em>, bo Banshee preiskal vsa polja metapodatkov, vključno z naslovom skladbe, naslovom albuma, izvajalcem albuma, letom, itd. Vsaka skladba katere metapodatki vsebujejo <em>janez</em> in <em>novak</em> bo vrnjena kot rezultat. Iskalni izrazi so neodvisni od velikosti črk. <em>janez</em>, <em>Janez</em> in <em>JANEZ</em> med iskanjem pomenijo enako stvar."
 
 #: C/search.page:43(title)
 msgid "Basic Operators"
-msgstr ""
+msgstr "Osnovni operatorji"
 
 #: C/search.page:44(p)
 msgid "Operators can be placed between any two search words or placed before a search word. The default operation is <gui>AND</gui> and is used when no other operators are used between two search terms. Because it is the default, there is no explicit AND operator."
-msgstr ""
+msgstr "Med katerekoli dve iskalni besedi ali pred iskalno besedo je mogoče postaviti operatorje. Privzeti operator je <gui>IN</gui>, ki se uporablja, ko se ne uporablja noben drug operator med dvema iskalnima nizoma. Ker IN je privzeti operator, izreci operator IN ne obstaja."
 
 #: C/search.page:49(p)
 msgid "Other basic operators include <gui>OR</gui> and <gui>NOT</gui>. Together, these three operations can yield very powerful queries to help you search your media."
-msgstr ""
+msgstr "Druga osnovna operatorja sta <gui>ALI</gui> in <gui>NE</gui>. Skupaj lahko ti trije operatorji tvorijo zmogljive poizvedbe, ki vam pomagajo iskati vaše večpredstavnostne datoteke."
 
 #: C/search.page:56(title)
 msgid "Logical Operators and Examples"
-msgstr ""
+msgstr "Logični operatorji in primeri"
 
 #: C/search.page:57(p)
 msgid "The following is a list of logical operators and examples of the search results when searching using them."
-msgstr ""
+msgstr "Sledi seznam logičnih operatorjev in iskalnih rezultatov pri njihovi uporabi."
 
 #: C/search.page:62(gui)
 msgid "Operator"
-msgstr ""
+msgstr "Operator"
 
 #: C/search.page:62(gui)
 #: C/search.page:84(gui)
 msgid "Description"
-msgstr ""
+msgstr "Opis"
 
 #: C/search.page:65(p)
 msgid "<em>default</em>, <em>white space</em>"
-msgstr ""
+msgstr "<em>privzeto</em>, <em>presledek</em>"
 
 #: C/search.page:65(p)
 msgid "Search for two terms with a space between the two words or terms."
-msgstr ""
+msgstr "Iščite za dva izraza s presledkom med dvema besedama ali izrazoma."
 
 #: C/search.page:69(p)
 msgid "OR, or, <key>|</key>, <key>,</key>"
-msgstr ""
+msgstr "OR, or, <key>|</key>, <key>,</key>"
 
 #: C/search.page:69(p)
 msgid "Search results will be two terms with either result in any field."
-msgstr ""
+msgstr "Rezultat iskanja bosta bila dva izraza s katerimkoli rezultatom v kateremukoli polju."
 
 #: C/search.page:73(p)
 msgid "NOT, not,<key>-</key>"
-msgstr ""
+msgstr "NOT, not,<key>-</key>"
 
 #: C/search.page:73(p)
 msgid "Do not display search results with any search team that follows the operator of NOT, not,<key>-</key>."
-msgstr ""
+msgstr "Ne prikaži rezultatov iskanja s katerimkoli iskalnim izrazom, ki sledi operatorju NE, ne, <key>-</key>."
 
 #: C/search.page:80(p)
 msgid "Examples of logical operations include:"
-msgstr ""
+msgstr "Primeri logičnih operacij vključujejo:"
 
 #: C/search.page:84(gui)
 msgid "Query"
-msgstr ""
+msgstr "Poizvedba"
 
 #: C/search.page:87(p)
 msgid "dave matthews"
-msgstr ""
+msgstr "janez novak"
 
 #: C/search.page:87(p)
 msgid "Matches any fields in a track containing both <em>dave</em> and <em>matthews</em>."
-msgstr ""
+msgstr "Ujema se z vsemi polji v skladbi, ki vsebujejo tako <em>janez</em> kot <em>novak</em>."
 
 #: C/search.page:92(p)
 msgid "dave, matthews"
-msgstr ""
+msgstr "janez, novak"
 
 #: C/search.page:92(p)
 #: C/search.page:97(p)
 #: C/search.page:102(p)
 msgid "Matches any fields in a track containing both <em>dave</em> or <em>matthews</em>."
-msgstr ""
+msgstr "Ujema se z vsemi polji v skaladbi, ki vsebujejo <em>janez</em> ali <em>novak</em>."
 
 #: C/search.page:97(p)
 msgid "dave or matthews"
-msgstr ""
+msgstr "janez ali novak"
 
 #: C/search.page:102(p)
 msgid "dave | matthews"
-msgstr ""
+msgstr "janez | novak"
 
 #: C/search.page:107(p)
 msgid "-\"dave matthews\""
-msgstr ""
+msgstr "- \"janez novak\""
 
 #: C/search.page:107(p)
 msgid "Displays all tracks whose fields do not containt <em>dave matthews</em>."
-msgstr ""
+msgstr "Prikaže vse skladbe, katerih polja ne vsebujejo <em>janez novak</em>."
 
 #: C/search.page:114(p)
 msgid "For more information on performing more complex search queries, see the <link xref=\"adv-search\"/> page."
-msgstr ""
+msgstr "Za več podrobnosti o izvajanju bolj zapletenih poizvedb iskanja si oglejte stran <link xref=\"adv-search\"/>."
 
 #: C/rb-import.page:8(desc)
 msgid "Import music and categorizations from the <app>Rhythmbox</app> music player."
-msgstr ""
+msgstr "Uvozite glasbo in kategorizacije iz predvajalnika glasbe <app>Rhythmbox</app>. "
 
 #: C/rb-import.page:12(title)
 msgid "Import your <app>Rhythmbox</app> library"
-msgstr ""
+msgstr "Uvozite svojo knjižnico <app>Rhythmbox</app>"
 
 #: C/play.page:9(desc)
 msgid "Play your videos and music files."
-msgstr ""
+msgstr "Predvajajte svoje video in glasbene datoteke."
 
 #: C/play.page:24(title)
 msgid "Play Your Media"
-msgstr ""
+msgstr "Predvajajte svoje datoteke večpredstavnosti"
 
 #: C/play.page:27(title)
 msgid "Play your music"
-msgstr ""
+msgstr "Predvajajte svojo glasbo"
 
 #: C/play.page:29(p)
 msgid "To play music in Banshee, choose the Music source. The music library will show you all artists in your music library, cover art for each album, and a list of all songs in your library."
-msgstr ""
+msgstr "Za predvajanje glasbe v Banshee izberite vir glasba. Glasbena knjižnica vam bo prikazala vse izvajalce v vaši glasbeni knjižnici, ovojnice za vsak album in seznam vseh skladb v vaši knjižnici."
 
 #: C/play.page:33(p)
 msgid "Choose the album or song you wish to play from the list of artists, albums or use the search bar in the upper right hand corner of Banshee."
-msgstr ""
+msgstr "S seznama izvajalcev izberite album ali skladbo, ki jo želite predvajati ali pa uporabite iskalno vrstico v zgornjem desnem kotu Banshee."
 
 #: C/play.page:37(p)
 msgid "To start playing a song, use your mouse to double click the song name, press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Za začetek predvajanja skladbe dvokliknite na ime skladbe, pritisnite <key>Preslednico</key> ali v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>."
 
 #: C/play.page:42(p)
 msgid "You can also start playing an album by choosing the album in the album browser and pressing use your mouse to double click the song name, press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Album lahko začnete predvajati z izbiro albuma v brskalniku albumov in dvoklikom na ime skladbe, pritiskom <key>Preslednice</key> ali izbiro <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq> v meniju Banshee."
 
 #: C/play.page:48(p)
 msgid "To play all songs by one artist, choose the artist in the artist browser and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Za predvajanje vseh skladb enega izvajalca izberite izvajalca v brskalniku izvajalcev in pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>."
 
 #: C/play.page:53(p)
 msgid "Banshee also displays your Favorite albums (those you play the most), Recent Favorites, Recently Added and Unheard music. Choose the one you wish to listen to and you can play songs from each."
-msgstr ""
+msgstr "Banshee prikazuje tudi vaše priljubljene albume (tiste, ki jih največ predvajate), nedavno priljubljeno, nedavno dodano in ne slišano glasbo. Izberite seznam, ki ga želite poslušati in lahko boste predvajali skladbe z njega. "
 
 #: C/play.page:61(title)
 msgid "Play a video"
-msgstr ""
+msgstr "Predvajajte videoposnetke"
 
 #: C/play.page:63(p)
 msgid "Your imported videos are listed alphabetically. To play a video, choose the video you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Vaši uvoženi videi so razvrščeni po abecedi. Za predvajanje videa ga izberite na seznamu in pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>."
 
 #: C/play.page:68(p)
 msgid "Banshee also shows your Favorite videos (those you watch the most) and Unwatched videos. Choose one and you can play a video from the list."
-msgstr ""
+msgstr "Banshee prikazuje tudi vaše najljubše videoposnetke (tiste, ki jih največ gledate) in ne gledane videoposnetke. Izberite enega in lahko boste predvajali video s seznama. "
 
 #: C/play.page:74(title)
 msgid "Play a Podcast"
-msgstr ""
+msgstr "Predvajajte podcaste"
 
 #: C/play.page:76(p)
 msgid "Podcasts shows you all Podcasts you're subscribed too, all Podcast shows available, and the Podcast browser lists all Podcasts in order of newest first."
-msgstr ""
+msgstr "Vir podcasti vam prikaže vse podcaste na katere ste naročeni, vse razpoložljive oddaje podcastov in vse podcaste v vrstnem redu od novejšega proti starejšemu."
 
 #: C/play.page:80(p)
 msgid "To play a Podcast, choose the Podcast you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Za predvajanja podcasta s seznama izberite podcast, ki ga želite predvajati, ter pritisnite <key>Preslednico</key> ali pa v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>."
 
 #: C/play.page:88(title)
 msgid "Play an internet radio station"
-msgstr ""
+msgstr "Predvajajte internetno radijsko postajo"
 
 #: C/play.page:90(p)
 msgid "The Radio source shows you all internet radio stations you have added to Banshee alphabetically."
-msgstr ""
+msgstr "Vir radio vam prikaže vse internetne radijske postaje, ki ste jih dodali v Banshee v abecednem vrstnem redu."
 
 #: C/play.page:94(p)
 msgid "To play an internet radio station, choose the radio station you wish to play from the list and press the <key>Spacebar</key>, or choose <guiseq><gui>Playback</gui><gui>Play</gui></guiseq> from the Banshee menu."
-msgstr ""
+msgstr "Za predvajanje internetne radijske postaje s seznama izberite radijsko postajo, ki jo želite predvajati, ter pritisnite <key>Preslednico</key> ali v meniju Banshee izberite <guiseq><gui>Predvajanje</gui><gui>Predvajaj</gui></guiseq>."
 
 #: C/play-queue.page:9(desc)
 msgid "Add media to your play queue."
-msgstr ""
+msgstr "Dodajanje večpredstavnostnih datotek v  čakalno vrsto predvajanja."
 
 #: C/play-queue.page:18(title)
 msgid "Play Queue"
-msgstr ""
+msgstr "Vrsta predvajanja"
 
 #: C/play-queue.page:20(p)
 msgid "The <gui>Play Queue</gui> allows you to add music to play in a sequential order. You can add many tracks to let you listen to hours of music non-stop. You can add individual tracks or entire albums, and sort or re-order them."
-msgstr ""
+msgstr "<gui>Čakalna vrsta predvajanja</gui> vam omogoča dodajanje skladb za predvajanje v zaporednem vrstnem redu. Dodate lahko skladbe za ure neprekinjenega poslušanja skladb. Dodate lahko posamezne skladbe ali celotne albume in jih razvrstite ali preuredite."
 
 #: C/play-queue.page:26(title)
 msgid "Add Music to the Play Queue"
-msgstr ""
+msgstr "Dodajanje glasbe v čakalno vrsto predvajanja"
 
 #: C/play-queue.page:28(p)
 msgid "From your music library, you will need to select the music tracks or albums you want to add to the play queue."
-msgstr ""
+msgstr "V svoji glasbeni knjižnici boste morali izbrati skladbe ali albume, ki jih želite dodati v čakalno vrsto predvajanja."
 
 #: C/play-queue.page:32(p)
 msgid "To add an entire album to the Play Queue, using your mouse press and hold the album and drag the album over <gui>Play Queue</gui> in the far left window pane."
-msgstr ""
+msgstr "Za dodajanje celotnega albuma v čakalno vrsto predvajanja s svojo miško pritisnite in držite album in ga povlecite nad <gui>Čakalna vrsta predvajanja</gui> v levem pladnju okna."
 
 #: C/play-queue.page:37(p)
 msgid "You can add music tracks to the Play Queue individually or as a group. To add an individual file, drag and drop it over the <gui>Play Queue</gui> in the far left window pane, or right click the track and choose <gui>Add to Play Queue</gui>."
-msgstr ""
+msgstr "Skladbe lahko v čakalno vrsto predvajanja dodate posamezno ali kot skupino. Za dodajanje posamezne datoteke jo povlecite in spustite nad <gui>Čakalno vrsto predvajanja</gui> v najbolj levem pladnju okna ali z desnim klikom na skladbo in izbiro <gui>Dodaj v čakalno vrsto predvajanja</gui>."
 
 #: C/play-queue.page:43(p)
 msgid "You can select multiple files by using your mouse and pressing <key>Control</key> and choosing each file with your mouse or select a range of files by pressing <key>Shift</key> twice to select that range of files. You can then drag and drop it over the <gui>Play Queue</gui> in the far left window pane or right click the tracks and choose <gui>Add to Play Queue</gui>."
-msgstr ""
+msgstr "Več datotek lahko izberete tako, da jih klikate z miško medtem ko držite tipko <key>Control</key> in s tem izberete posamezne datoteke ali pa izberete obseg datotek tako, da dvakrat pritisnete tipko <key>Shift</key>. Nato jih lahko povlečete in spustite nad <gui>Čakalno vrsto predvajanja</gui> v daljnem levem pladnju okna ali z desnim klikom skladb in izbiro <gui>Dodaj v čakalno vrsto predvajanja</gui>.  "
 
 #: C/play-queue.page:56(title)
 msgid "Organize Your Play Queue"
-msgstr ""
+msgstr "Organizacija vaše čakalne vrste predvajanja."
 
 #: C/play-queue.page:58(p)
 msgid "Your Play Queue is organized in the order of the tracks you added. The first tracks or albums you added to the queue will be the first to be played. You can re-order your Play Queue by using your mouse and dragging and dropping a track or group of tracks in the list. Choose the track(s) you wish to re-order with your mouse and release your mouse over the number or place in the list you wish those files to be in the queue."
-msgstr ""
+msgstr "Vaša čakalna vrsta predvajanja je organizirana v redu dodanih skladb. Prve skladbe ali albume, ki ste jih dodali v čakalno vrsto, bodo prvi predvajani. Svojo čakalno vrsto predvajanja lahko preuredite z vlečenjem in spuščanjem skladbe ali skupine skladb v seznamu predvajanja. Z miško izberite skladb-o/e, ki jih želite preurediti in svojo miško spustite nad številko ali mestom, kjer naj bodo te datoteke v čakalni vrsti predvajanja."
 
 #: C/play-queue.page:70(title)
 msgid "Removing Tracks from the Play Queue"
-msgstr ""
+msgstr "Odstranjevanje skladb s čakalne vrste predvajanja"
 
 #: C/play-queue.page:72(p)
 msgid "You can remove an individual track, a group of tracks, or clear your entire play queue."
-msgstr ""
+msgstr "Odstranite lahko posamezno skladbo, skupino skladb ali počistite svojo celotno čakalno vrsto predvajanja."
 
 #: C/play-queue.page:76(p)
 msgid "To remove an individual track or group of tracks, select the track with your mouse and then press <key>Delete</key>."
-msgstr ""
+msgstr "Za odstranitev posamezne skladbe ali skupine skladb, skladbo izberite z miško in nato pritisnite <key>Izbriši</key>."
 
 #: C/play-queue.page:80(p)
 msgid "To clear your entire Play Queue, press the <gui>Clear</gui> button in the upper right hand corner of the Play Queue."
-msgstr ""
+msgstr "Za čiščenje svoje celotne čakalne vrste predvajanja pritisnite gumb <gui>Počisti</gui> v zgodnjem desnem kotu čakalne vrste predvajanja."
 
 #: C/manage-tags.page:10(desc)
 msgid "Edit and change music tags and metadata."
-msgstr ""
+msgstr "Uredite in spremenite oznake in metapodatke glasbe."
 
 #: C/manage-tags.page:25(title)
 msgid "Music Metadata"
-msgstr ""
+msgstr "Metapodatki glasbe"
 
 #: C/manage-tags.page:29(title)
 msgid "Music metadata"
-msgstr ""
+msgstr "Metapodatki glasbe"
 
 #: C/manage-tags.page:31(p)
 msgid "Digital music contains metadata that stores information in the music file including the artist, album, year recorded, genre, and more. Almost all music purchased over the internet will have the metadata already embedded and if you import music from CDs, Banshee will include the metadata when ripping the CD if available. For more information on ripping CDs and including the metadata see the <link xref=\"import\"/>."
-msgstr ""
+msgstr "Digitalna glasba vsebuje metapodatke, ki v glasbeni datoteki shranjujejo podrobnosti vključno z izvajalcem, albumom, letom snemanja, zvrstjo in več. Skoraj vsa glasba kupljena preko interneta bo imela metapodatke že vstavljene. Med uvažanjem glasbe s CD-jev, bo Banshee pri zajemanju CD-ja vključil metapodatke, če so na voljo. Za več podrobnosti o zajemanju CD-jev in vključevanju metapodatkov si oglejte <link xref=\"import\"/>."
 
 #: C/manage-tags.page:39(p)
 msgid "Popular metadata formats are ID3v1 and ID3v2 for MP3 files and Vorbis comments for OGG Vorbis files."
-msgstr ""
+msgstr "Priljubljene vrste metapodatkov sta ID3v1 in ID3v2 za datoteke MP3 in opombe Vorbis za datoteke OGG Vorbis."
 
 #: C/manage-tags.page:42(p)
 msgid "If you have imported songs that do not contain metadata, <app>Banshee</app> will display <gui>Unknown</gui> for most fields in the library."
-msgstr ""
+msgstr "Če ste uvozili skladbe brez metapodatkov, bo <app>Banshee</app> prikazal <gui>Neznano</gui> za večino polj v knjižnici."
 
 #: C/manage-tags.page:50(title)
 msgid "Edit Your Metadata"
-msgstr ""
+msgstr "Urejajte svoje metapodatke"
 
 #: C/manage-tags.page:52(p)
 msgid "You can change and edit the metadata of your songs. Select the song or songs you want to update and hit the <key>E</key>, choose <guiseq><gui>Edit</gui><gui>Edit Track Information</gui></guiseq> from the menu, or use your mouse and right click on the files and select <gui>Edit Track Information</gui>."
-msgstr ""
+msgstr "Metapodatke svojih skladb lahko spremenite in uredite. Izberite skladbo ali skladbe, ki jih želite posodobiti in pritisnite <key>E</key>, v meniju izberite <guiseq><gui>Uredi</gui><gui>Uredi podatke o  skladbi</gui></guiseq> ali z miško desno kliknite na datoteke in izberite <gui>Uredi podatke o  skladbi</gui>"
 
 #: C/manage-tags.page:59(p)
 msgid "A dialog box will appear that shows the song's metadata and allow you to change or update it. The default fields displayed include:"
-msgstr ""
+msgstr "Pojavilo se bo polje pogovornega okna, ki prikazuje metapodatke skladbe in vam omgoča njihovo spremembo ali posodobitev. Privzeto prikazana polja vključujejo:"
 
 #: C/manage-tags.page:63(gui)
 msgid "Track Title:"
-msgstr ""
+msgstr "Naslov skladbe:"
 
 #: C/manage-tags.page:64(gui)
 msgid "Track Artist"
-msgstr ""
+msgstr "Izvajalec skladbe"
 
 #: C/manage-tags.page:65(gui)
 msgid "Album Title"
-msgstr ""
+msgstr "Naslov albuma"
 
 #: C/manage-tags.page:66(gui)
 msgid "Genre"
-msgstr ""
+msgstr "Zvrst"
 
 #: C/manage-tags.page:67(gui)
 msgid "Track Number"
-msgstr ""
+msgstr "Številka skladbe"
 
 #: C/manage-tags.page:68(gui)
 msgid "Disc Number"
-msgstr ""
+msgstr "Številka diska"
 
 #: C/manage-tags.page:69(gui)
 #: C/manage-playlists.page:109(gui)
 msgid "Year"
-msgstr ""
+msgstr "Leto"
 
 #: C/manage-tags.page:72(p)
 msgid "Update the song's information. If you have selected multiple songs to edit press the right arrow icon to the right of the <gui>Track Title</gui> field or press the <gui>Forward</gui> button at the bottom of the dialog when finished with each song. When you have completed editing all metadata, press <gui>Save</gui>."
-msgstr ""
+msgstr "Posodobite podrobnosti o skladbi. Če ste izbrali več skladb za urejanje, pritisnite ikono desne puščice desno od polja <gui>Naslov skladbe</gui> ali pritisnite gumb <gui>Naprej</gui> na dnu pogovornega okna, ko boste končali z urejanjem skladbe. Ko boste dokončali urejanje vseh metapodatkov, pritisnite <gui>Shrani</gui>."
 
 #: C/manage-playlists.page:10(desc)
 msgid "Create and manage playlists."
-msgstr ""
+msgstr "Ustvarjanje in upravljanje s seznami predvajanja."
 
 #: C/manage-playlists.page:19(title)
 msgid "Playlists"
-msgstr ""
+msgstr "Seznami predvajanja"
 
 #: C/manage-playlists.page:21(p)
 msgid "Playlists allow you to create and save a list of music tracks to be played in a specific order. Playlists are convenient to create a list of your favorite songs or to split your library into smaller lists that are easy to browse through. Some portable media players even allow you to transfer the playlist so you can take it with you on the go."
-msgstr ""
+msgstr "Seznami predvajanja vam omogočajo ustvarjanje in shranjevanje seznama skladb za predvajanjem v določenem vrstnem redu. Seznami predvajanja so priročni za ustvarjanje seznama vaših najljubših skladb ali za razdelitev knjižnice v manjše sezname skozi katere je lažje brskati. Nekateri prenosni predvajalniki večpredstavnosti vam omogočajo prenos seznama predvajanja, zato ga lahko vzamete s sabo."
 
 #: C/manage-playlists.page:28(p)
 msgid "Banshee supports normal playlists, which include songs you add to the playlist, as well as smart playlists. Smart Playlists are automatically generated playlists based on your listening habits, favorite music, or more."
-msgstr ""
+msgstr "Banshee podpira običajne sezname predvajanja, ki vključujejo skladbe, ki jih dodate na seznam predvajanja in pametne sezname predvajanja na osnovi vaših navad poslušanja, priljubljene glasbe in več."
 
 #: C/manage-playlists.page:34(title)
 msgid "Normal Playlists"
-msgstr ""
+msgstr "Običajni seznami predvajanja"
 
 #: C/manage-playlists.page:36(p)
 msgid "A normal playlist is a list of songs that you add and manage. You might want to create your own list of songs by your favorite artist from multiple albums, your latest favorite songs, or an upbeat playlist to listen to while you exercise."
-msgstr ""
+msgstr "Običajen seznam predvajanja je seznam skladb, ki jih dodajate in upravljate. Morda želite ustvariti svoj lasten seznam skladb svojega priljubljenega izvajalca iz več albumov, svojih zadnjih priljubljenih skladb ali poskočen seznam predvajanja za poslušanje med telesno vadbo. "
 
 #: C/manage-playlists.page:42(p)
 msgid "You can create a new playlist by pressing <keyseq><key>Control</key><key>N</key></keyseq>, from the menu choosing <guiseq><gui>Menu</gui><gui>New Playlist</gui></guiseq> or by selecing the track(s) you would like to add to the playlist. Select the track(s), right click them, and choose <guiseq><gui>Add to Playlist</gui><gui>New Playlist</gui></guiseq>. You can also drag and drop them to a new playlist by selcting the track(s) and dragging them to the left hand window pane over <gui>Music</gui>. As you drag it over <gui>Music</gui>, a new option <gui><em>New Playlist</em></gui> will appear and you can drop the track(s) over <gui><em>New Playlist</em></gui> to add them to the playlist. You can repeat this process until you have added all the tracks you want in the playlist."
-msgstr ""
+msgstr "Nov seznam predvajanja lahko ustvarite s pritiskom <keyseq><key>Control</key><key>N</key></keyseq>, z izbiro <guiseq><gui>Meni</gui><gui>Nov seznam predvajanja</gui></guiseq> ali z izbiro skladb, ki jih želite dodati na seznam predvajanja. Izberite skladb-o/e, desno kliknite na njih in izberite <guiseq><gui>Dodaj na seznam predvajanja</gui><gui>Nov seznam predvajanja</gui></guiseq>. Skladbe lahko na nov seznam predvajanja tudi povlečete in spustite tako, da skladbe izberete in jih povlečete na levi pladenj okna nad <gui>Glasba</gui>. Ko boste skladbe povlekli nad <gui>Glasba</gui>, se bo pojavila nova možnost <gui><em>Nov seznam predvajanja</em></gui>. Za dodajanje skladb jih spustite nad  <gui><em>Nov seznam predvajanja</em></gui>. Opravilo lahko ponavljate toliko časa, dokler nimate na seznamu predvajanja vseh želenih skladb."
 
 #: C/manage-playlists.page:56(p)
 msgid "To give your playlist its own name, select the playlist and right click on the playlist and press <gui>Rename Playlist</gui> and enter the name of your playlist."
-msgstr ""
+msgstr "Če želite seznamu predvajanja dati ime, ga izberite, nanj desno kliknite in pritisnite <gui>Preimenuj seznam predvajanja</gui> in vnesite ime svojega seznama predvajanja."
 
 #: C/manage-playlists.page:61(p)
 msgid "You can change the order of the playlist by dragging and dropping the song to the new position in the playlist. Songs can only be re-ordered in the playlist when none of the columns are sorted. To unsort a column, press the column until the up or down arrow is no longer showing and the column is blank and then re-order the playlist."
-msgstr ""
+msgstr "Vrsti red seznama predvajanja lahko spremeniti z vlečenjem in spuščanjem skladb na nov položaj v seznamu predvajanja. Skladbe je mogoče v seznamu predvajanja preurejati le, če ni razvrščen noben od stolpcev. Za odstranitev razvrstitve stolpca, pritisnite stolpec tolikokrat, da puščica navzgor ali navzdol ni več prikazana in preuredite seznam predvajanja. "
 
 #: C/manage-playlists.page:68(p)
 msgid "To remove a track from the playlist, select the track(s) you wish to remove. Press the <key>Delete</key>, from the menu choose <guiseq><gui>Edit</gui><gui>Remove from Playlist</gui></guiseq> or right click the track(s) with your mouse and press <gui>Remove from Playlist</gui>."
-msgstr ""
+msgstr "Za odstranitev skladbe s seznama predvajanja izberite skladb-o/e, ki jih želite odstraniti. Pritisnite <key>Izbriši</key>, v meniju izberite <guiseq><gui>Uredi</gui><gui>Odstrani s seznama predvajanja</gui></guiseq> ali pa desno kliknite s svojo miško in pritisnite <gui>Odstrani s seznama predvajanja</gui>."
 
 #: C/manage-playlists.page:76(title)
 msgid "Smart Playlist"
-msgstr ""
+msgstr "Pameten seznam predvajanja"
 
 #: C/manage-playlists.page:78(p)
 msgid "Smart Playlists allow you to quickly generate a dynamic playlist based on a number of pre-set variables. You can quickly create a new playlist based on a specific artist, favorites or more."
-msgstr ""
+msgstr "Pametni seznami predvajanja vam omogočajo hitro ustvarjanje dinamičnih seznamov predvajanja na osnovni številnih pred-nastavljenih spremenljivk. Nov seznam predvajanja lahko ustvarite na osnovi določenega izvajalca, priljubljenih in več."
 
 #: C/manage-playlists.page:83(p)
 msgid "To create a new Smart Playlist, from the menu choose <guiseq><gui>Media</gui><gui>New Smart Playlist</gui></guiseq>. You will be presented with a dialog to create a new Smart Playlist. Enter the name of your playlist and then choose the criteria your playlist should be based on. You can choose from any field included in the song's meatadata, such as Album, Artist or Year. Choose the criteria and then choose from one of the following:"
-msgstr ""
+msgstr "Za ustvarjanje novega pametnega seznama predvajanj izberite <guiseq><gui>Večpredstavnost</gui><gui>Nov pameten seznam predvajanj</gui></guiseq>. Predstavljeno vam bo pogovorno okno za ustvarjanje novega pametnega seznama predvajanja. Vnesite ime svojega seznama predvajanja in izberite kriterije na katerih naj bo osnovan vaš seznam predvajanja.  Izbirate lahko med katerimikoli polji vključenimi v metapodatke skladbe kot so album, izvajalec ali leto. Izberite kriterije na nato storite nekaj od naslednjega:"
 
 #: C/manage-playlists.page:93(p)
 #: C/manage-playlists.page:109(gui)
 #: C/manage-playlists.page:113(gui)
 msgid "is"
-msgstr ""
+msgstr "je"
 
 #: C/manage-playlists.page:94(p)
 msgid "is not"
-msgstr ""
+msgstr "ni"
 
 #: C/manage-playlists.page:95(p)
 msgid "less than"
-msgstr ""
+msgstr "manj kot"
 
 #: C/manage-playlists.page:96(p)
 msgid "more than"
-msgstr ""
+msgstr "več kot"
 
 #: C/manage-playlists.page:97(p)
 msgid "at most"
-msgstr ""
+msgstr "največ"
 
 #: C/manage-playlists.page:98(p)
 msgid "at least"
-msgstr ""
+msgstr "najmanj"
 
 #: C/manage-playlists.page:101(p)
 msgid "You can also press the <gui>+</gui> button to add an addition query to the Smart Playlist. For example, you could create a smart playlist that includes all songs from 2010 that you rated 5 stars. To create this playlist you would choose:"
-msgstr ""
+msgstr "Pritisnete lahko tudi gumb <gui>+</gui> za dodajanje poizvedbe dodajanja v pameten seznam. Na primer ustvarite lahko pameten seznam predvajanja, ki vključuje vse skladbe iz leta 2010, ocenjene s 5 zvezdicami. Za ustvarjanje tega seznama predvajanja bi izbrali:"
 
 #: C/manage-playlists.page:110(gui)
 msgid "2010"
-msgstr ""
+msgstr "2010"
 
 #: C/manage-playlists.page:113(gui)
 msgid "Rating"
-msgstr ""
+msgstr "Ocena"
 
 #: C/manage-playlists.page:114(p)
 msgid "<gui/>5 stars"
-msgstr ""
+msgstr "<gui/>5 zvezdic"
 
 #: C/manage-playlists.page:118(p)
 msgid "You can then optionally select how many songs are included by pressing the <gui>Limit</gui> to checkbox and choosing the number of songs to be included."
-msgstr ""
+msgstr "Izbirno lahko izberete koliko skladb je vključenih tako, da pritisnete izbirno polje <gui>Omeji</gui> in izberete število skladb, ki naj bodo vključene."
 
 #: C/manage-playlists.page:123(p)
 msgid "Banshee also includes smart playlists already created for you. Press the <gui>Open in editor</gui> button to view how the playlist created was or to modify it. If you press <gui>Create and save</gui> the playlist will be automatically generated and saved for you. The following playlists are included:"
-msgstr ""
+msgstr "Banshee vključuje tudi pametne sezname predvajanja že ustvarjene za vas. Pritisnite gumb <gui>Odpri v urejevalniku</gui> za ogled kako je bil seznam predvajanja ustvarjen ali za njegovo spreminjanje. Če pritisnete <gui>Ustvari in shrani</gui>, bo seznam predvajanja samodejno ustvarjen in shranjen za vas. Vključeni so naslednji seznami predvajanja:"
 
 #: C/manage-playlists.page:131(title)
 msgid "Banshee Smart Playlists"
-msgstr ""
+msgstr "Pametni seznami prevajanja Banshee"
 
 #: C/manage-playlists.page:132(p)
 msgid "Favorites (Songs rated four and five stars)"
-msgstr ""
+msgstr "Priljubljene (skladbe, ocenjene s štirimi in petimi zvezdicami)"
 
 #: C/manage-playlists.page:133(p)
 msgid "Recent Favorites (Songs listened to often in the past week)"
-msgstr ""
+msgstr "Nedavno priljubljene (skladbe pogosto poslušane v predhodnem tednu)"
 
 #: C/manage-playlists.page:135(p)
 msgid "Recently Added (Songs imported within the last week"
-msgstr ""
+msgstr "Nedavno dodano (skladbe uvožene v zadnjem tednu)"
 
 #: C/manage-playlists.page:136(p)
 msgid "Unheard (Songs that have not been played or skipped)"
-msgstr ""
+msgstr "Ne slišano (skladbe, ki niso bile predvajane ali preskočene)"
 
 #: C/manage-playlists.page:137(p)
 msgid "Neglected Favorites (Favorites not played in over two months)"
-msgstr ""
+msgstr "Zapostavljene priljubljene (priljubljene, ki niso bile predvajanje v dveh mesecih)"
 
 #: C/manage-playlists.page:139(p)
 msgid "700 MB of Favorites (A data CD worth of favorite songs)"
-msgstr ""
+msgstr "700 MB priljubljenih (podatkovni CD priljubljenih skladb)"
 
 #: C/manage-playlists.page:140(p)
 msgid "80 Minutes of Favorites (An audio CD worth of favorite songs)"
-msgstr ""
+msgstr "80 minut priljubljenih (zvočni CD priljubljenih skladb)"
 
 #: C/manage-playlists.page:142(p)
 msgid "Unrated (Songs that haven't been rated)"
-msgstr ""
+msgstr "Neocenjeno (Skladbe, ki še niso bile ocenjene)"
 
 #: C/manage-coverart.page:9(desc)
 msgid "Manage or change your albums cover art."
-msgstr ""
+msgstr "Upravljajte ali spremenite ovojnice svojih albumov."
 
 #: C/manage-coverart.page:24(title)
 msgid "Cover art"
-msgstr ""
+msgstr "Ovitki"
 
 #: C/lastfm.page:9(desc)
 msgid "Enable Last.fm, song reporting and Last.fm radio."
-msgstr ""
+msgstr "Omogočite Last.fm, poročanje skladb in radio Last.fm."
 
 #: C/lastfm.page:24(title)
 msgid "Last.fm"
-msgstr ""
+msgstr "Last.fm"
 
 #: C/lastfm.page:26(p)
 msgid "Last.fm is a popular online service that offers both free and paid versions. Last.fm offers information on music artists and albums and if you create a user profile Last.fm allows you to track the music you listen to in Banshee for free. If you suscribe as a paying member, you can also listen to streaming music from Last.fm in various music clients, including Banshee. Last.fm offers multiple channels to stream, including recommended music for you based on your listening habits, your favorites and more."
-msgstr ""
+msgstr "Last.fm je priljubljena spletna storitev, ki ponuja tako brezplačno in plačano različico. Last.fm ponuja podatke o glasbenih izvajalci in albumih in če ustvarite uporabniški profil, vam Last.fm omogoča brezplačno sledenje glasbe, ki jo poslušate v Banshee. Če se naročite kot plačujoči član, lahko poslušate tudi pretakajočo glasbo z Last.fm v različnih glasbenih odjemalcih vklučno z Banshee. Last.fm ponuja več kanalov za pretok vključno s priporočeno glasbo za vas na osnovi vaših navad poslušanja, vaših priljubljenih in več. "
 
 #: C/lastfm.page:35(title)
 msgid "Enable Last.fm"
-msgstr ""
+msgstr "Omogoči Last.fm"
 
 #: C/lastfm.page:36(p)
 msgid "To get the most out of Last.fm, you will want to create a Last.fm profile. Visit <link href=\"http://www.last.fm/join\">http://www.last.fm/join</link> to create an account or choose <guiseq><gui>Edit</gui><gui>Preferences</gui></guiseq> from the Banshee menu. Then press the <gui>Source Specific</gui> tab and press the <gui>Source</gui> drop down menu and choose <gui>Last.fm</gui> and select the <em>Sign up for Last.fm</em> link."
-msgstr ""
+msgstr "Da bi dobili največ iz Last.fm, boste morali ustvariti profil Last.fm. Za ustvarjanje računa obiščite <link href=\"http://www.last.fm/join\">http://www.last.fm/join</link> ali v meniju Banshee izberite <guiseq><gui>Uredi</gui><gui>Možnosti</gui></guiseq>. Nato pritisnite zavihek <gui>Lastno viru</gui> in pritisnite spustni meni <gui>Vir</gui> in izberite <gui>Last.fm</gui> in izberite povezavo <em>Vpis v Last.fm</em>"
 
 #: C/lastfm.page:45(p)
 msgid "To enable Banshee to report the songs you play on your computer to Last.fm, sign in to Last.fm in Banshee in the <gui>Source Specific</gui> preferences. Enter your username and press the <gui>Log in to Last.fm</gui> button. You will be directed to a Last.fm webpage in your browser to grant Banshee access. Press the <gui>Yes, allow access</gui> link in your browser and you will be redirected to a webpage that displays a message that Banshee now has access to Last.fm. Return to Banshee and press the <gui>Finish Logging In</gui> button to complete the process."
-msgstr ""
+msgstr "Za omogočenje poročanja skladb v Banshee, ki se predvajajo na vašem računalniku, se v možnostih <gui>Lastno viru</gui> Banshee vpišite na Last.fm. Vnesite svoje uporabniško ime in pritisnite gumb <gui>Prijavi se v Last.fm</gui>. V svojem brskalniku boste usmerjeni na spletno stran Last.fm za dodeljevanje pravic Banshee. V svojem brskalniku kliknite na povezavo <gui>Da, dovoli dostop</gui> in preusmerjeni boste na spletno stran, ki bo prikazala sporočilo, da ima Banshee sedaj dostop do Last.fm.  Vrnite se v Banshee in pritisnite gumb <gui>Končanj prijavljanje</gui> za dokončanje opravila."
 
 #: C/lastfm.page:58(title)
 msgid "Enable Last.fm Song Reporting"
-msgstr ""
+msgstr "Omogoči poročanje skladb Last.fm"
 
 #: C/lastfm.page:59(p)
 msgid "After you have successfully linked Banshee to your Last.fm profile, to enable Banshee to report the songs to your Last.fm profile, in the <gui>Source Specific</gui> tab in Banshee's preferences, press the <gui>Enable Song Reporting</gui> checkbox. If you have an active internet connection, Banshee will now send Last.fm information regarding the songs you play. To view your play history, visit your profile on the Last.fm website. Last.fm will automatically update your music metadata if any of your artist, song title or album information is incorrect."
-msgstr ""
+msgstr "Po tem, ko ste Banshee uspešno povezali s svojim profilom Last.fm za omogočitev poročanja skladb na svoj profil Last.fm v zavihku <gui>Lastno viru</gui> v možnostih Banshee pritisnite izbirno polje <gui>Omogoči poročanje skladb</gui>. V primeru, da imate dejavno internetno povezavo, bo Banshee sedaj poslal podatke Last. fm o skladbah, ki jih prevajate. Za ogled svoje zgodovine predvajanja obiščite svoj profil na spletišču Last.fm. Last.fm bo samodejno posodobil metapodatke vaše glasbe, če so podatki o izvajalcu, naslovu skladbe ali albumu nepravilni."
 
 #: C/lastfm.page:72(title)
 msgid "Listen to Last.fm Radio"
-msgstr ""
+msgstr "Poslušanje radia Last.fm"
 
 #: C/lastfm.page:73(p)
 msgid "Last.fm radio is free for residents of the United States, United Kingdom and Germany. Residents of other countries will have to pay for a premium account with Last.fm to listen to radio. Premium members, in all countries, also receive premium radio features: listening to playlists and stations of music you've loved or tagged."
-msgstr ""
+msgstr "Radio Last.fm je brezplačen za prebivalce Združenih držav Amerike, Združenega Kraljestva in Nemčije. Prebivalci drugih držav morajo plačati za premijski račun z Last.fm za poslušanje radia. Premijski člani v vseh državah prejmejo tudi zmožnosti premijskega radia: poslušanje seznamov predvajanja in postaj glasbe, ki vam je všeč ali ste jo označili."
 
 #: C/lastfm.page:80(p)
 msgid "In Banshee's context menu onthe left hand side, you will now have a Last.fm section, including your Lat.fm radio stations. You will need an active internet connection to listen to Last.fm radio. Choose the radio station you wish to listen to and Banshee will communicate with Last.fm to populate songs for that radio station. Press the <gui>Play</gui> button in Banshee or <key>Spacebar</key> to start streaming a Last.fm radio station. You can also press the <gui>Next</gui> button in Banshee, <key>N</key> or choose <guiseq><gui>Playback</gui><gui>Next</gui></guiseq> to play the next song in your radio station queue."
-msgstr ""
+msgstr "V vsebinskem meniju  na levi strani Banshee boste imeli sedaj odsek Last.fm, vključno s svojimi radijskimi postajami Last.fm. Za poslušanje radia Last.fm boste potrebovali dejavno internetno povezavo.  Izberite radijsko postajo, ki jo želite poslušati. Banshee bo komuniciral z Last.fm za dodajanje skladb za to radijsko postajo. V Banshee pritisnite gumb <gui>Predvajaj</gui> ali <key>Preslednico</key> za začetek pretakanja radijske postaje Last.fm. Za predvajanje naslednje skladbe v čakalni vrsti svoje radijske postaje lahko pritisnete gumb <gui>Naslednja</gui>, tipko <key>N</key> ali izberite  <guiseq><gui>Predvajanje</gui><gui>Naslednja</gui></guiseq>."
 
 #: C/keyboardshortcuts.page:7(desc)
 #: C/advanced.page:27(title)
 #: C/advanced.page:29(title)
 msgid "Keyboard Shortcuts"
-msgstr ""
+msgstr "Tipkovne bližnjice"
 
 #: C/keyboardshortcuts.page:24(title)
 msgid "Control Banshee using Keyboard Shortcuts"
-msgstr ""
+msgstr "Nadzor Banshee s tipkovnimi bližnjicami"
 
 #: C/keyboardshortcuts.page:28(title)
 msgid "Playback Control"
-msgstr ""
+msgstr "Nadzor predvajanja"
 
 #: C/keyboardshortcuts.page:32(gui)
 #: C/keyboardshortcuts.page:53(gui)
@@ -808,7 +809,7 @@ msgstr ""
 #: C/keyboardshortcuts.page:90(gui)
 #: C/keyboardshortcuts.page:107(gui)
 msgid "Key"
-msgstr ""
+msgstr "Ključ"
 
 #: C/keyboardshortcuts.page:32(gui)
 #: C/keyboardshortcuts.page:53(gui)
@@ -816,37 +817,37 @@ msgstr ""
 #: C/keyboardshortcuts.page:90(gui)
 #: C/keyboardshortcuts.page:107(gui)
 msgid "Action"
-msgstr ""
+msgstr "Dejanje"
 
 #: C/keyboardshortcuts.page:35(p)
 msgid "Space Bar"
-msgstr ""
+msgstr "Preslednica"
 
 #: C/keyboardshortcuts.page:35(p)
 msgid "Play or Pause the current song"
-msgstr ""
+msgstr "Predvajanje ali premor predvajanja trenutne pesmi"
 
 #: C/keyboardshortcuts.page:38(p)
 #: C/keyboardshortcuts.page:76(key)
 msgid "N"
-msgstr ""
+msgstr "N"
 
 #: C/keyboardshortcuts.page:38(p)
 msgid "Play the next song"
-msgstr ""
+msgstr "Predvajaj naslednjo skladbo"
 
 #: C/keyboardshortcuts.page:41(p)
 msgid "B"
-msgstr ""
+msgstr "B"
 
 #: C/keyboardshortcuts.page:41(p)
 msgid "Play the previous song"
-msgstr ""
+msgstr "Predvajaj predhodno skladbo"
 
 #: C/keyboardshortcuts.page:49(title)
 #: C/keyboardshortcuts.page:69(title)
 msgid "Library Interaction"
-msgstr ""
+msgstr "Interakcija s knjižnico"
 
 #: C/keyboardshortcuts.page:56(key)
 #: C/keyboardshortcuts.page:76(key)
@@ -857,417 +858,417 @@ msgstr ""
 #: C/keyboardshortcuts.page:132(key)
 #: C/keyboardshortcuts.page:137(key)
 msgid "Control"
-msgstr ""
+msgstr "Control"
 
 #: C/keyboardshortcuts.page:56(key)
 #: C/keyboardshortcuts.page:110(key)
 msgid "F"
-msgstr ""
+msgstr "F"
 
 #: C/keyboardshortcuts.page:56(p)
 msgid "Move the focus to the search box"
-msgstr ""
+msgstr "Premakni žarišče v iskalno polje"
 
 #: C/keyboardshortcuts.page:60(p)
 msgid "<key>/</key>, <keyseq><key>Control</key><key>F</key></keyseq>"
-msgstr ""
+msgstr "Pritisnite <keyseq><key>Control</key><key>H</key></keyseq>."
 
 #: C/keyboardshortcuts.page:61(p)
 msgid "Open import media dialog"
-msgstr ""
+msgstr "Odpri pogovorno okno uvažanja"
 
 #: C/keyboardshortcuts.page:76(p)
 msgid "Create New Playlist"
-msgstr ""
+msgstr "Ustvari nov seznam predvajanja"
 
 #: C/keyboardshortcuts.page:86(title)
 #: C/add-podcast.page:26(title)
 msgid "Podcasts"
-msgstr ""
+msgstr "Podcasti"
 
 #: C/keyboardshortcuts.page:93(key)
 msgid "Y"
-msgstr ""
+msgstr "Y"
 
 #: C/keyboardshortcuts.page:93(p)
 msgid "Mark the selected episodes as old"
-msgstr ""
+msgstr "Označi izbrane epizode kot stare"
 
 #: C/keyboardshortcuts.page:103(title)
 msgid "Interface"
-msgstr ""
+msgstr "Vmesnik"
 
 #: C/keyboardshortcuts.page:110(p)
 msgid "Toggle full-screen mode"
-msgstr ""
+msgstr "Preklopi celozaslonski način"
 
 #: C/keyboardshortcuts.page:114(key)
 #: C/keyboardshortcuts.page:118(key)
 msgid "A"
-msgstr ""
+msgstr "A"
 
 #: C/keyboardshortcuts.page:114(p)
 msgid "Select all songs in playlist view"
-msgstr ""
+msgstr "Izberi vse skladbe v pogledu seznama predvajanja"
 
 #: C/keyboardshortcuts.page:118(key)
 msgid "Shift"
-msgstr ""
+msgstr "Shift"
 
 #: C/keyboardshortcuts.page:119(p)
 msgid "Unselect all songs in playlist view"
-msgstr ""
+msgstr "Odstrani izbiro vseh skladb v pogledu seznama predvajanja"
 
 #: C/keyboardshortcuts.page:123(key)
 msgid "W"
-msgstr ""
+msgstr "W"
 
 #: C/keyboardshortcuts.page:123(p)
 msgid "Hide Banshee Window (Requires Notification Area Plug-in Enabled"
-msgstr ""
+msgstr "Skrij okno Banshee (zahteva omogočen vstavek obvestilnega področja"
 
 #: C/keyboardshortcuts.page:127(key)
 msgid "Left Mouse Button"
-msgstr ""
+msgstr "Levi miškin gumb"
 
 #: C/keyboardshortcuts.page:128(p)
 msgid "Play Previous Song (Requires Notification Area Plug-in Enabled"
-msgstr ""
+msgstr "Predvajaj predhodno skladbo (zahteva omogočen vstavek obvestilnega področja"
 
 #: C/keyboardshortcuts.page:132(key)
 msgid "Right Mouse Button"
-msgstr ""
+msgstr "Desni miškin gumb"
 
 #: C/keyboardshortcuts.page:133(p)
 msgid "Play Next Song (Requires Notification Area Plug-in Enabled"
-msgstr ""
+msgstr "Predvajaj naslednjo skladbo (zahteva omogočen vstavek obvestilnega področja"
 
 #: C/keyboardshortcuts.page:137(key)
 msgid "Middle Mouse Button"
-msgstr ""
+msgstr "Srednji miškin gumb"
 
 #: C/keyboardshortcuts.page:138(p)
 msgid "Toggle Play / Pause (Requires Notification Area Plug-in Enabled"
-msgstr ""
+msgstr "Preklopi predvajanje / premor (zahteva omogočen vstavek obvestilnega področja"
 
 #: C/itunes-import.page:8(desc)
 msgid "Import music and categorizations from the <app>iTunes</app> media player."
-msgstr ""
+msgstr "Uvozite glasbo in kategorizacije iz predvajalnika <app>iTunes</app>."
 
 #: C/itunes-import.page:12(title)
 msgid "Import your <app>iTunes</app> library"
-msgstr ""
+msgstr "Uvozite svojo knjižnico <app>iTunes</app>"
 
 #: C/introduction.page:8(desc)
 msgid "Introduction to the <app>Banshee Media Player</app>."
-msgstr ""
+msgstr "Uvod v <app>Banshee predvajalnik večpredstavnosti</app>."
 
 #: C/introduction.page:24(title)
 msgid "Introduction"
-msgstr ""
+msgstr "Uvod"
 
 #: C/introduction.page:26(p)
 msgid "<app>Banshee</app> is a media player that allows you to play your music, videos, and other media media as well sync it with portable devices to take your media on the go."
-msgstr ""
+msgstr "<app>Banshee</app> je večpredstavnostni predvajalnik, ki vam omogoča predvajanja vaše glasbe, videov in drugih večpredstavnostnih datotek kot tudi njihovo usklajevanje s prenosnimi napravami."
 
 #: C/introduction.page:31(p)
 msgid "<app>Banshee</app> includes features to import your media, manage its metadata, and play your music and videos."
-msgstr ""
+msgstr "<app>Banshee</app> vključuje zmožnosti za uvoz vaših večpredstavnostih datotek, uvoz njihovih metapodatkov in predvajanje vaše glasbe in videov."
 
 #: C/introduction.page:35(p)
 msgid "Banshee also helps you sync your music and videos to popular portable devices, such as digital audio players and smartphones. Banshee supports popular devices including most iPods, Sandisk and Creative MP3 players, and Android powered phones."
-msgstr ""
+msgstr "Banshee vam pomaga tudi uskladiti svojo glasbo in videoposnetke s priljubljenimi prenosnimi napravami kot so digitalni zvočni predvajalniki in pametni telefoni. Banshee podpira priljubljene naprave vključno z večino iPodi, MP3 predvajalniki Sandisk in Creative ter Android telefoni."
 
 #: C/index.page:24(title)
 msgid "Add, Remove & Play"
-msgstr ""
+msgstr "Dodaj, odstrani in predvajaj"
 
 #: C/index.page:28(title)
 msgid "Manage & Sort"
-msgstr ""
+msgstr "Upravljaj in razvrsti"
 
 #: C/index.page:32(title)
 msgid "Sync your media with a portable music player"
-msgstr ""
+msgstr "Uskladite svoje večpredstavnostne datoteke s prenosljivim predvajalnikom glasbe"
 
 #: C/index.page:36(title)
 msgid "Add additional functionality to Banshee"
-msgstr ""
+msgstr "Dodajte dodatne zmožnosti Banshee"
 
 #: C/index.page:40(title)
 msgid "Advanced options and help"
-msgstr ""
+msgstr "Napredne možnosti in pomoč"
 
 #: C/index.page:44(title)
 msgid "Common Problems"
-msgstr ""
+msgstr "Pogoste težave"
 
 #: C/import.page:8(desc)
 msgid "Add music and videos from your computer to your Banshee library."
-msgstr ""
+msgstr "Dodajte glasbo in videoposnetke s svojega računalnika v vašo knjižnico Banshee."
 
 #: C/import.page:15(name)
 msgid "Shaun McCance"
-msgstr ""
+msgstr "Shaun McCance"
 
 #: C/import.page:16(email)
 msgid "shaunm at gnome.org"
-msgstr ""
+msgstr "shaunm at gnome.org"
 
 #: C/import.page:21(title)
 msgid "Import music & videos"
-msgstr ""
+msgstr "Uvozite glasbo in video"
 
 #: C/import.page:23(p)
 msgid "You can import music and videos stored on your computer into Banshee. Imported files appear in your sources and can be edited and managed like any other media in Banshee."
-msgstr ""
+msgstr "V Banshee lahko uvozite glasbo in videoposnetke shranjene na svojem računalniku. Uvožene datoteke se pojavijo v vaših virih in jih je mogoče urejati in upravljati kot katerekoli druge večpredstavnostne datoteke v Banshee."
 
 #: C/import.page:27(p)
 msgid "To import music or video files on your computer, choose <guiseq><gui>Media</gui><gui>Import Media</gui></guiseq>. A dialog will appear with a number of choices."
-msgstr ""
+msgstr "Za uvoz glasbenih ali video datotek s svojega računalnika izberite <guiseq><gui>Večpredstavnost</gui><gui>Uvozi večpredstavnost</gui></guiseq>.  Pojavilo se bo pogovorno okno s številnimi izbirami."
 
 #: C/import.page:31(p)
 msgid "Plugins may add additional import choices. See <link xref=\"#plugins\"/> below."
-msgstr ""
+msgstr "Vstavki lahko dodajo dodatne možnosti uvoza. Oglejte si <link xref=\"#plugins\"/> spodaj."
 
 #: C/import.page:37(gui)
 msgid "Local Folders"
-msgstr ""
+msgstr "Krajevne mape"
 
 #: C/import.page:38(p)
 msgid "Choose this option to import all music and video files within a specified folder, including all subfolders. You will be prompted with a dialog to choose a folder to import from."
-msgstr ""
+msgstr "Izberite to možnost za uvoz vseh glasbenih in video datotek v določeni mapi, vključno z vsemi podmapami. Odprlo se bo pogovorno okno za izbiro mape za uvoz."
 
 #: C/import.page:43(gui)
 msgid "Local Files"
-msgstr ""
+msgstr "Krajevne datoteke"
 
 #: C/import.page:44(p)
 msgid "Choose this option to import only the specific file or files you select. You will be prompted with a dialog to choose the file or files to import."
-msgstr ""
+msgstr "Izberite to možnost za uvoz le izbrane datoteke ali datotek. Pozvani boste s pogovornim oknom za izbiro datoteke ali datotek za uvoz."
 
 #: C/import.page:49(gui)
 msgid "Home Folder"
-msgstr ""
+msgstr "Domača mapa"
 
 #: C/import.page:50(p)
 msgid "Choose this option to import all music and video files in your entire home folder, including files in any subfolders."
-msgstr ""
+msgstr "Izberite to možnost za uvoz vseh glasbenih in video datotek v vaši celotni domači mapi vključno z datotekami v katerihkoli podmapah."
 
 #: C/import.page:54(gui)
 msgid "Videos From Photos Folder"
-msgstr ""
+msgstr "Videoposnetki iz mape fotografij"
 
 #: C/import.page:55(p)
 msgid "Many digital cameras can take short vidoes, and photo-management applications often download these videos directly into your Photos folder. Choose this option to import any videos that have been stored in your Photos folder."
-msgstr ""
+msgstr "Veliko digitalnih fotoaparatov lahko posname kratke videoposnetke, ki jih programi za upravljanje fotografij pogosto uvozijo v vašo mapo Slike. Izberite to možnost za uvoz videov, ki so bili shranjeni v vaši mapi Slike. "
 
 #: C/import.page:63(p)
 msgid "You can safely import from a folder you have already imported from without worrying about duplicate entries in your library."
-msgstr ""
+msgstr "Mapo lahko varno znova uvozite brez skrbi o podvojenih vnosih v svoji knjižnici. "
 
 #: C/import.page:68(title)
 msgid "Import from a Playlist"
-msgstr ""
+msgstr "Uvozi s seznama predvajanja"
 
 #: C/import.page:69(p)
 msgid "You can also import music from playlists. Most playlist files end in <em>m3u</em>. To import from a playlist, from the Banshee menu choose <guiseq><gui>Media</gui><gui>Import Playlist</gui></guiseq> and locate the playlist file in your folder, select it and press <gui>Import</gui>."
-msgstr ""
+msgstr "Glasbo lahko uvozite tudi s seznamov predvajanja. Večina datotek seznamov predvajanja se konča z <em>m3u</em>. Za uvoz s seznama prevajanja v meniju Banshee izberite  <guiseq><gui>Večpredstavnost</gui><gui>Uvozi seznam predvajanja</gui></guiseq> in v svoji mapi najdite datoteko seznama predvajanja, jo izberite in pritisnite <gui>Uvozi</gui>."
 
 #: C/import.page:78(title)
 msgid "Additional Import Sources"
-msgstr ""
+msgstr "Dodatni viri uvoza"
 
 #: C/import.page:79(p)
 msgid "Plugins may add additional import choices. The following additional sources will be available if the appropriate plugins are enabled:"
-msgstr ""
+msgstr "Vstavki lahko dodajo dodatne možnosti uvoza. Če so primerni vstavki omogočeni, bodo na voljo naslednji dodatni viri:"
 
 #: C/extensions.page:8(desc)
 msgid "Add additional functionality to Banshee."
-msgstr ""
+msgstr "Dodajte dodatne zmožnosti v Banshee."
 
 #: C/extensions.page:23(title)
 msgid "Banshee Extensions"
-msgstr ""
+msgstr "Razširitve Banshee"
 
 #: C/extensions.page:27(title)
 msgid "Official Banshee Extensions"
-msgstr ""
+msgstr "Uradne razširitve Banshee"
 
 #: C/extensions.page:29(title)
 msgid "Manage extensions for Banshee"
-msgstr ""
+msgstr "Upravljajte razširitve Banshee"
 
 #: C/extensions.page:34(title)
 msgid "Community Banshee Extensions"
-msgstr ""
+msgstr "Razširitve Banshee, ki jih je razvila skupnost"
 
 #: C/extensions.page:36(title)
 msgid "Add community built extensions for Banshee"
-msgstr ""
+msgstr "Dodajte razširitve za Banshee, ki jih je izgradila skupnost"
 
 #: C/emusic.page:8(desc)
 msgid "Import music purchased from eMusic."
-msgstr ""
+msgstr "Uvažanje glasbe kupljene na eMusic."
 
 #: C/emusic.page:12(title)
 msgid "Import your eMusic tracks"
-msgstr ""
+msgstr "Uvozite svoje skladbe eMusic"
 
 #: C/amazon.page:9(desc)
 msgid "Sync and purchase music from the Amazon MP3 Store."
-msgstr ""
+msgstr "Usklajujte in nakupujte glasbo v trgovini Amazon MP3."
 
 #: C/amazon.page:24(title)
 msgid "Amazon MP3 Store"
-msgstr ""
+msgstr "Trgovina Amazon MP3"
 
 #: C/amazon.page:26(p)
 msgid "Banshee supports downloading and importing music from the Amazon MP3 store. You can manually import Amazon music files, purchase music in your web browser or buy music inside of Banshee. Amazon only offers music for sale as an MP3 in certain countries and depending on your location, you may not be able to buy Amazon MP3s."
-msgstr ""
+msgstr "Banshee podpira prejemanje in uvažanje glasbe iz trgovine Amazon MP3. Glasbene datoteke Amazon lahko ročno uvozite, kupite glasbo v svojem spletnem brskalniku ali kupite glasbo v Banshee.  Amazon ponuja glasbo le v vrsti MP3 v določenih državah in morda glede na vaše mesto ne boste mogli kupiti Amazon MP3-jev."
 
 #: C/amazon.page:34(p)
 msgid "Banshee uses an Amazon affiliate code for all music purchases. All money made via this affiliate code is donated to the GNOME Foundation."
-msgstr ""
+msgstr "Banshee uporablja pridružitveno kodo Amazon za vse nakupe glasbe. Ves denar zbran s to pridružitveno kodo je doniran fundaciji GNOME."
 
 #: C/amazon.page:40(title)
 msgid "Purchase Amazon MP3s in your web browser"
-msgstr ""
+msgstr "Kupite Amazon MP3-je v svojem spletnem brskalniku"
 
 #: C/amazon.page:42(p)
 msgid "Music purchased from Amazon's MP3 store can be automatically downloaded and imported into Banshee. Banshee associates itself with the .amz file Amazon provides for MP3 purchases. When you buy music on Amazon, your web browser will download the .amz file and Banshee will automatically open it and begin the download and import the music."
-msgstr ""
+msgstr "Glasbo kupljeno v trgovini Amazon MP3 je mogoče samodejno prejeti in uvoziti v Banshee. Banshee se poveže z datoteko .amz, ki jo Amazon zagotavlja za nakupe MP3. Ko kupite glasbo na Amazonu, bo vaš spletni brskalnik prejel datoteko .amz, Banshee jo bo samodejno odprl in začel prejem in uvoz glasbe."
 
 #: C/amazon.page:51(title)
 msgid "Buy Amazon MP3s in Banshee"
-msgstr ""
+msgstr "Kupite Amazon MP3-je v Banshee"
 
 #: C/amazon.page:53(p)
 msgid "You can also search for songs on Amazon within Banshee. Choose the Amazon MP3 Store from the Banshee menu on the left. This will load the Amazon MP3 Store just as if you were in a web browser. You can search Amazon for the music you wish to buy and after logging in to Amazon, buy music with one click. Banshee will automatically download and import the your purchase into the library."
-msgstr ""
+msgstr "Skladbe lahko na Amazonu iščete znotraj Banshee. V meniju Banshee na levi izberite trgovino Amazon MP3. To bo naložilo trgovino Amazon MP3 tako, kot če bi bili v spletnem brskalniku. Po Amazonu lahko iščete glasbo, ki jo želite kupiti. Po prijavi v Amazon lahko glasbo kupite z enim klikom. Banshee bo samodejno prejel in uvozil vaš nakup v knjižnico."
 
 #: C/amazon.page:63(title)
 msgid "Import Amazon MP3s manually"
-msgstr ""
+msgstr "Ročen uvoz Amazon MP3-je"
 
 #: C/amazon.page:65(p)
 msgid "When music is purchased from Amazon in a web browser, a file with the extension .amz is downloaded and saved to your hard drive. To import music purchased manually from Amazon, in Banshee choose <guiseq><gui>Media</gui><gui>Import Media</gui></guiseq> from the menu and select the *.amz file to be imported. Banshee will then open this file and connect to the Amazon MP3 store to begin the download."
-msgstr ""
+msgstr "Ko glasbo kupite z Amazona v spletnem brskalniku, bo datoteka z razširitvijo .amz prejeta in shranjena na vaš trdi disk. Za uvoz glasbe ročno kupljene z Amazona v Banshee izberite <guiseq><gui>Večpredstavnost</gui><gui>Uvozi večpredstavnost</gui></guiseq> in izberite datoteko *.amz za uvoz. Banshee bo nato odprl to datoteko in se povezal v trgovino Amazon MP3 za začetek prejema."
 
 #: C/amazon.page:74(p)
 msgid "Amazon .amz files are only active for a short time. If you do not download your music quickly, the file will expire and you cannot download your music from Amazon. Amazon does not publish how long files are active. It is recommended you download and import any purchases from Amazon within an hour of purchase."
-msgstr ""
+msgstr "Datoteke Amazon .amz so dejavne le za kratek čas. V primeru da svoje glasbe ne boste hitro prejeli, bo datoteka potekla in ne boste mogli prejeti svoje glasbe z Amazona. Amazon ne objavlja kako dolgo so datoteke dejavne. Priporočamo vam, da svoje nakupe z Amazona prejmete in uvozite v eni urni od nakupa."
 
 #: C/advanced.page:8(desc)
 msgid "Get help for advanced actions."
-msgstr ""
+msgstr "Dobite pomoč za napredne možnosti."
 
 #: C/advanced.page:23(title)
 msgid "Advanced Options and Help"
-msgstr ""
+msgstr "Napredne možnosti in pomoč."
 
 #: C/add-radio.page:11(desc)
 msgid "Add, remove and play internet radio stations in Banshee."
-msgstr ""
+msgstr "Dodajte, odstranite in predvajajte internetne radijske postaje v Banshee."
 
 #: C/add-radio.page:26(title)
 msgid "Internet Radio"
-msgstr ""
+msgstr "Internetni radio"
 
 #: C/add-radio.page:29(title)
 msgid "What is Internet Radio?"
-msgstr ""
+msgstr "Kaj je internetni radio?"
 
 #: C/add-radio.page:31(p)
 msgid "Internet radio stations are similar to regular radio stations, allowing an individual or organization to stream music live over the internet. Internet radio stations can be a simultaneous stream of a regular radio station, an amateur broadasting their own station, or commercial internet radio stations that include live DJs and even commercials."
-msgstr ""
+msgstr "Internetne radijske postaje so podobne običajnim radijskim postajam. Posamezniku ali organizaciji omogočajo živo pretakanje glasbe preko interneta. Internetne radijske postaje so lahko hkraten pretok običajne radijske postaje, amaterji, ki razpršeno oddajajo svojo lastno postajo ali komercialne internetne radijske postaje, ki vključujejo DJ-je in celo reklame."
 
 #: C/add-radio.page:41(title)
 msgid "Add Radio Station"
-msgstr ""
+msgstr "Dodajanje radijske postaje"
 
 #: C/add-radio.page:43(p)
 msgid "To add an internet radio station to Banshee, press <gui>Add Station</gui> in the upper right hand corner of Banshee or, from the menu, choose <guiseq><gui>Menu</gui><gui>Add Station</gui></guiseq>."
-msgstr ""
+msgstr "Za dodajanje internetne radijske postaje v Banshee v zgornjem desnem kotu Banshee pritisnite <gui>Dodaj postajo</gui> ali pa v meniju izberite <guiseq><gui>Meni</gui><gui>Dodaj postajo</gui></guiseq>."
 
 #: C/add-radio.page:48(p)
 msgid "From the internet radio station's webpage, copy the link to their stream URL in your web browser. In most browsers, you can right click on the link and press <gui>Copy Link</gui>."
-msgstr ""
+msgstr "S spletne strani internetne radijske postaje v svojem brskalniku kopirajte povezavo do URL-ja njihovega pretoka. V večini brskalnikom lahko desno kliknete na povezavo in pritisnete <gui>Kopiraj povezavo</gui>."
 
 #: C/add-radio.page:54(p)
 msgid "Banshee will prompt you to enter the <gui>Station Genre</gui>. Choose the kind of music the internet radio station plays from the available drop down selections. You will then need to enter the <gui>Station Name</gui>. Enter a name for the radio station. Then press tab or use your mouse to select the <gui>Stream URL:</gui> dialog to paste the URL of the radio station. Using your mouse right click and choose <gui>Paste</gui> or press <keyseq><key>Control</key>+<key>V</key></keyseq>."
-msgstr ""
+msgstr "Banshee vas bo pozval k vnose <gui>Zvrst postaje</gui>. Iz razpoložljivih izbrir spustnega menia izberite vrsto glasbe, ki jo internetna radijska postaja predvaja. Vnesti boste morali <gui>Ime postaje</gui>. Nato pritisnite tabulator ali uporabite svojo miško za izbiro pogovornega okna <gui>URL pretoka:</gui>  v katerega prilepite URL radijske postaje.  Z miško desno kliknite in izberite <gui>Prilepi</gui> ali pritisnite <keyseq><key>Control</key>+<key>V</key></keyseq>."
 
 #: C/add-radio.page:62(p)
 msgid "You can optionally also fill out the fields for <gui>Station Creator</gui>, <gui>Description</gui>, and <gui>Rating</gui>."
-msgstr ""
+msgstr "Če želite, lahko izpolnite tudi polja <gui>Ustvarjalec postaje</gui>, <gui>Opis</gui> in <gui>Ocena</gui>."
 
 #: C/add-radio.page:66(p)
 msgid "Then press <gui>Save</gui> to save the internet radio station in Banshee."
-msgstr ""
+msgstr "Nato pritisnite <gui>Shrani</gui> za shranjevanje internetne radijske postaje v Banshee."
 
 #: C/add-podcast.page:11(desc)
 msgid "Add, remove and play podcasts in Banshee."
-msgstr ""
+msgstr "Dodajte, odstranite in predvajajte podcaste v Banshee."
 
 #: C/add-podcast.page:29(title)
 msgid "What is a Podcast?"
-msgstr ""
+msgstr "Kaj je podcast?"
 
 #: C/add-podcast.page:31(p)
 msgid "Podcasts are recorded programs, similar to radio programs, that are available on the internet and allow you to subscribe. When you subscribe to a podcast in Banshee, each time a new program is released, Banshee will automatically download the podcast and allow you to listen to it."
-msgstr ""
+msgstr "Podcasti so posneti programi podobni radijskim programom, ki so na voljo na internetu in vam omogočajo naročnino. Ko se v Banshee naročite na podcast, bo ob novem izidu programa Banshee samodejno prejel podcast in vam omogočil njegovo poslušanje."
 
 #: C/add-podcast.page:36(p)
 msgid "There are podcasts on almost any subject including music, movies, Linux, and more. Search the internet using your favorite search engine with a search term such as \"movie podcast\" and you will be presented with many options to choose from."
-msgstr ""
+msgstr "Obstajajo podcasti o skoraj vseh temah vključno z glasbo, filmi, Linuxom in več. Iščite po internetu z uporabo svojega priljubljenega iskalnika z iskalnim nizom kot je \"film podcast\" in predstavljenih vam bo veliko možnosti za izbiro."
 
 #: C/add-podcast.page:44(title)
 msgid "Add a Podcast"
-msgstr ""
+msgstr "Dodajanje podcasta"
 
 #: C/add-podcast.page:46(p)
 msgid "To add a Podcast to Banshee you will first need to visit the podcast's home page on the internet in your browser. Almost all podcasts will have a button or link displayed to subscribe to the podcast. Copy the link to the podcast's subscription. In most web browsers, you can right click on the link and choose <gui>Copy link</gui>."
-msgstr ""
+msgstr "Za dodajanje podcasta v Banshee boste morali najprej obiskati domačo stran podcasta v svojem spletnem brskalniku. Skoraj vsi podcasti bodo imeli prikazan gumb ali povezavo za naročilo nanj. Kopirajte povezavo na naročilo podcasta. V večini brskalnikov lahko desno kliknete na povezavo in izberete <gui>Kopiraj povezavo</gui>. "
 
 #: C/add-podcast.page:53(p)
 msgid "In Banshee, press and choose <gui>Subscribe to Podcasts</gui> in the upper right hand corner, from the menu choose <guiseq><gui>Media</gui><gui> Subscribe to Podcast</gui></guiseq> or use the keyboard shortcut <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>."
-msgstr ""
+msgstr "V zgornjem desnem kotu Banshee izberite <gui>Naroči se na podcaste</gui>, v meniju izberite choose <guiseq><gui>Večpredstavnost</gui><gui> Naroči se na podcast</gui></guiseq> ali uporabite tipkovno bližnjico <keyseq><key>Shift</key><key>Control</key><key>F</key></keyseq>."
 
 #: C/add-podcast.page:59(p)
 msgid "Banshee will then allow you to choose how you want to download new podcasts from a drop down menu. Your choices include:"
-msgstr ""
+msgstr "Banshee vam bo nato v spustnem meniju omogočal izbiro kako želite prejeti nove podcaste. Vaše izbire vključujejo: "
 
 #: C/add-podcast.page:63(p)
 msgid "Download the Most Recent Episode (This will automatically download the last episode that was released)."
-msgstr ""
+msgstr "Prejemi najnovejšo epizodo (to bo samodejno prejelo zadnjo izdano epizodo)."
 
 #: C/add-podcast.page:65(p)
 msgid "Download All Episodes (This will download all episodes)."
-msgstr ""
+msgstr "Prejmi vse epizode (To bo prejelo vse epizode)."
 
 #: C/add-podcast.page:66(p)
 msgid "Let Me Decide Which Episodes to Download (This will allow you to choose which episodes you would like to download)."
-msgstr ""
+msgstr "Naj sam/a odločim katere epizode naj prejmem (to vam bo omogočilo izbiro epizod, ki jih želite prejeti)."
 
 #: C/add-podcast.page:70(p)
 msgid "After you have added a Podcast feed, Banshee will display:"
-msgstr ""
+msgstr "Po dodajanju vira podcasta bo Banshee prikazal:"
 
 #: C/add-podcast.page:73(p)
 msgid "<gui>Name</gui>: (Name of the specific episode)"
-msgstr ""
+msgstr "<gui>Ime</gui>: (Ime določene epizode)"
 
 #: C/add-podcast.page:74(p)
 msgid "<gui>Podcast</gui>: (Name of the Podcast)"
-msgstr ""
+msgstr "<gui>Podcast</gui>: (Ime podcasta)"
 
 #: C/add-podcast.page:75(p)
 msgid "<gui>Published</gui> (Date the episode was published or released)"
-msgstr ""
+msgstr "<gui>Objavljeno</gui> (Datum objave ali izida epizode)"
 
 #. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
 #: C/index.page:0(None)
 msgid "translator-credits"
-msgstr ""
+msgstr "Andrej Žnidaršič"
 
diff --git a/help/sl/sort.page b/help/sl/sort.page
index 0e53ff7..86f3081 100644
--- a/help/sl/sort.page
+++ b/help/sl/sort.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#manage"/>
     <link type="seealso" xref="search"/>
-    <desc>Sort your media and add additional columns.</desc>
+    <desc>Razvrstite svoje večpredstavnostne datoteke in dodajte dodatne stolpce.</desc>
     <revision pkgversion="1.6" version="0.1" date="2009-01-22" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,35 +19,21 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Sort your media</title>
+  <title>Razvrstite svoje večpredstavnostne datoteke</title>
 
   <section id="addcolumn">
 
-  <title>Adding Columns</title>    
+  <title>Dodajanje stolpcev</title>    
   
-  <p>As your library grows, you may want to sort your library view to play
-  search or view certain songs, artists, or albums.
-  </p>
+  <p>Medtem ko vaša knjižnica raste, boste morda svoj pogled knjižnice želeli razvrstiti za predvajanje ali ogled določenih skladb, izvajalcev ali albumov.</p>
   
-  <p>You can add additional columns to the library view in <app>Banshee</app>
-  to give you more information about the songs and also allow you to sort
-  by.  By default, Banshee displays columns for songs including 
-  <gui>Name</gui>, <gui>Artist</gui>, <gui>Album</gui> and <gui>Time</gui>.
-  To add additional columns, using your mouse right click on any of the columns
-  and Banshee will display all available column to choose from.  Click the
-  checkbox next to the name of the column you wish to add to the library view.
-  </p>
+  <p>Pogledu knjižnice v <app>Banshee</app> lahko dodatne dodatne stolpce, ki vam dajo več podrobnosti o skladbah in vam dovolijo razvrščanje. Privzeto Banshee prikazuje stolpce skladb <gui>Ime</gui>, <gui>Izvajalec</gui>, <gui>Album</gui> in <gui>Čas</gui>. Za dodajanje dodatnih stolpcev z miško desno kliknite na katerikoli stolpec in Banshee bo prikazal vse razpoložljive stolpce. Kliknite izbirno polje poleg imena stolpca, ki ga želite dodati v pogled knjižnice.</p>
   
   </section>
   
   <section id="sorting">
-    <title>Sorting Columns</title>
-    <p>You can sort your library by using your mouse to click on any of the
-    columns displayed in library view.  If you wish to sort your music library
-    by Artist, click the <gui>Artist</gui> column header and Banshee will 
-    automically sort that column alphabetically.  Clicking the 
-    <gui>Artist</gui> column again will sort the column in reverse alphabetical
-    order.</p>
+    <title>Razvrščanje stolpcev</title>
+    <p>Svojo knjižnico lahko razvrstite tako, da z miško kliknete na enega od stolpcev prikazanih v pogledu knjižnice. Če glasbeno knjižnico razvrstiti po izvajalcu, kliknite na glavo stolpca <gui>Izvajalec</gui> in Banshee bo stolpec samodejno razvrstil po abecedi. Ponoven klik na <gui>Izvajalec</gui> bo stolpec razvrstil v nasprotnem abecednem redu.</p>
   </section>
 	
 </page>
diff --git a/help/sl/sync.page b/help/sl/sync.page
index 5a084f4..ed91fd7 100644
--- a/help/sl/sync.page
+++ b/help/sl/sync.page
@@ -4,7 +4,7 @@
   <info>
     <link type="guide" xref="index#sync"/>
     <link type="seealso" xref="playlists"/>
-    <desc>Sync your media to a portable media player or smartphone.</desc>
+    <desc>Uskladite svoje večpredstavnostne datoteke s prenosnim večpredstavnostnim predvajalnikom ali pametnim telefonom.</desc>
     <revision pkgversion="1.8" version="0.1" date="2010-08-29" status="draft"/>
     <credit type="author">
       <name>Paul Cutler</name>
@@ -19,127 +19,69 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Sync</title>    
+  <title>Usklajevanje</title>    
   
-  <p>Banshee supports syncing your music to portable media players and 
-  smartphones.  You can add specific music tracks, albums or playlist 
-  or allow Banshee to keep your music player in sync with your entire
-  library.  After your player is connected to your computer you can also
-  play back the songs on your portable player in Banshee.  When syncing
-  music in a lossless format, such as FLAC, Banshee will automatically
-  transcode your music for you to a lossy format such as Ogg Vorbis or MP3,
-  if you have the correct codecs installed.
-  </p>
+  <p>Banshee podpira usklajevanje vaše glasbe s prenosnimi večpredstavnostnimi predvajalniki in pametnimi telefoni. Dodate lahko določene skladbe, albume ali seznam predvajanja ali pa Banshee dovolite usklajevanje celotne knjižnice s svojim glasbenim predvajalnikom. Ko je vaš predvajalnik povezan na računalnik lahko skladbe na prenosnem predvajalniku predvajate v Banshee. Med usklajevanjem glasbe vrste brez izgub kot je FLAC, bo Banshee vašo glasbo samodejno prekodiral v vrsto z izgubai kot je Ogg Vorbis ali MP3, če imate nameščene pravilne kodeke.</p>
   
   <section id="devices">
-    <title>Device Support</title>
-    <p>Banshee supports almost all modern portable music players and
-    smartphones with the notable exception of the Apple iPhone, iPad and
-    iPod Touch.</p>
+    <title>Podpora naprav</title>
+    <p>Banshee podpira skoraj vse nove prenosne predvajalnike glasbe z izjemo Apple iPhone, iPad in iPod Touch.</p>
   
-  <p>When you plug your device in, Banshee will display it in the left menu.
-  Pressing the device icon will take you to your device home page in Banshee
-  displaying your sync preferences.
-  </p>
+  <p>Ko vklopite svojo napravo, jo bo Banshee prikazal v levem meniju. Pritisk na ikono naprave vas bo odpeljal na domačo stran naprave v Banshee, ki bo prikazala vaše možnosti usklajevanja.</p>
   
   </section>
   
     <section id="sync-settings">
-    <title>Sync Your Music</title>
-    <p>You can choose to manage the media on your portable music
-    by having Banshee automatically sync it or manage your music and media
-    manually.
-    </p>
+    <title>Uskladite svojo glasbo</title>
+    <p>Večpredstavnostne datoteke na svojem prenosnem predvajalniku glasbe lahko upravljate s samodejnim usklajevanjem Banshee ali pa s svojo glasbo in večpredstavnostne datoteke upravljate ročno.</p>
     
-    <p>Choose your device from the Banshee menu and then choose how you want
-    to sync your media, including:
-    </p>
+    <p>Izberite svojo napravo iz menija Banshee in nato izberite kako želite uskladiti svoje večpredstavnostne datoteke, vključno z:</p>
     <list>
-      <item><p>Music</p></item>
-      <item><p>Audiobooks</p></item>  
-      <item><p>Videos</p></item>
+      <item><p>Glasba</p></item>
+      <item><p>Zvočne knjige</p></item>  
+      <item><p>Videi</p></item>
       <item><p>Podcast</p></item>  
     </list>
     
-    <p>From the dropdown menu next to each of the media, choose from:
-    </p>
+    <p>V spustnem meniju poleg vsakega medija izberite iz:</p>
     <list>
-      <item><p>Manage manually</p></item>
-      <item><p>Sync entire library</p></item>  
+      <item><p>Upravljajte ročno</p></item>
+      <item><p>Uskladi celotno knjižnico</p></item>  
     </list>    
     
     <note style="warning">
-      <p>If you choose to sync your entire library automatically with your
-      portable media player make sure your portable media player has enough
-      storage space.  If your library is larger than the space on your
-      portable media player, Banshee will sync media until your player is
-      full and then stop.        
-      </p>
+      <p>V primeru, da izberete samodejno usklajevanje vaše celotne knjižnice s svojim prenosnim predvajalnikom glasbe, se prepričajte da ima prenosni predvajalnik na voljo dovolj prostora. V primeru, da je vaša knjižnica večja od prostora na vašem prenosnem predvajalniku glasbe, bo Banshee usklajeval večpredstavnostne datoteke dokler vaš predvajalnik in poln in se nato zaustavil.</p>
     </note>
     
-    <p>If you have created playlists or smart playlists in your music library,
-    they will also be displayed as a sync option for Music.  This can be 
-    helpful when creating smart playlists, as smart playlists will automatically
-    update as new content is added based on the playlist rules, and Banshee
-    will sync the new playlist to your device every time you plug it in.
-    </p>
+    <p>V primeru, da ste v svoji glasbeni knjižnici ustvarili sezname predvajanja , bodo bili prikazani tudi kot možnost usklajevanja za glasbo. To je lahko uporabno pri ustvarjanju pametnih seznamov, saj se bodo pametni seznami ob dodajanju nove vsebine na osnovi pravil seznama predvajanja samodejno posodabljali  . Banshee bo nov seznam predvajanja uskladil z napravo vsakič, ko jo priklopite. </p>
     
-    <p>Banshee will display the total hard drive space of your portable music
-    player in a graph in the bottom center of Banshee.  The graph will show you
-    how much space is taken by audio files, video, other and free space.  
-    Directly below that Banshee will show you how many total items are stored
-    on your portable music player, how many hours or days of listening that is
-    equal to, and total space used.
-    </p>
+    <p>Banshee bo prikazal celoten prostor na trdem disku vašega prenosnega predvajalnika glasbe v grafu na spodnjem delu Banshee. Graf bo prikazal koliko prostora zasedajo zvočne, video in druge datoteke, ter koliko prostora je še praznega. Neposredno pod tem vam bo Banshee prikazal koliko je vseh predmetov shranjenih na vašem prenosnem predvajalniku glasbe, koliko uram ali dnem predvajanja to ustreza in koliko prostora je porabljenega.</p>
     
   </section>
 
   <section id="sync-manually">
-    <title>Sync Your Entire Library</title>
-    <p>You can drag and drop media to your portable music player form Banshee.
-    Select the file or files you want to copy to your portable media player
-    and then press and hold your right mouse button and drag the file(s) to
-    your portable media player icon in Banshee.  This will copy the files to 
-    your device.
-    </p>
+    <title>Uskladite svojo celotno knjižnico</title>
+    <p>Večpredstavnostne datoteke lahko iz Banshee spustite v svoj prenosni predvajalnik glasbe. Izberite datoteko ali datoteke, ki jih želite prekopirati na svoj prenosni predvajalnik glasbe in nato pritisnite in držite desni miškin gumb in povlecite datotek-o/e na ikono svojega prenosnega predvajalnika v Banshee. To bo datoteke skopiralo na vašo napravo.  </p>
     
-    <p>If your music library is encoded in a format that your portable media
-    player does not support, such as OGG or FLAC, and you have the necessary
-    codecs installed, Banshee can automatically transcode these files to MP3
-    when transferring to your portable media player.  Check with your Linux
-    distribution for the necessary codecs as it is outside the scope of this
-    help and varies by distribution.
-    </p>
+    <p>V primeru da je vaša glasbena knjižnica vrste, ki je vaš prenosni večpredstavnostni prevajalnik ne podpira (na primer OGG ali FLAC) in imate nameščene zahtevane kodeke, lahko Banshee te datoteke samodejno med prenašanjem na veš prenosni predvajalnik večpredstavnosti prekodira v MP3. Za pomoč pri namestitvi kodekov si oglejte dokumentacijo distribucije, saj je izven obsega te pomoči in se med distribucijami razlikuje.</p>
     
     <note style="tip">
-      <p>You may need to eject your device to load the files correctly
-      on your portable music player.  To eject your device in Banshee,
-      using your mouse right click the device in the Banshee menu and
-      press <gui>Disconnect</gui>.
-      </p>
+      <p>Morda boste morali svojo napravo izvreči za pravilno nalaganje datotek na svoj prenosni predvajalnik glasbe. Za izvrz svoje naprave v Banshee z miško v meniju Banshee desno kliknite na napravo in pritisnite <gui>Odklopi</gui>.</p>
     </note>
 
   </section>
   
   <section id="pmp-play">
-    <title>Play Music From Your Portable Music Player</title>
-    <p>You can play music stored on your portable music player directly in
-    Banshee.  Choose your player in the Banshee menu on the left and your 
-    portable music player's library will be displayed.  You can then play
-    music in Banshee just as you would music in your own library.</p>
+    <title>Predvajajte glasbo s svojega prenosnega predvajalnika glasbe</title>
+    <p>Glasbo shranjeno na prenosnem predvajalniku glasbe lahko predvajate neposredno v Banshee. Izberite svoj predvajalnik v meniju Banshee na levi in prikazana bo knjižnica vašega predvajalnika glasbe. Nato lahko v Banshee predvajate glasbo kot bi jo predvajali v svoji lastni knjižnici.</p>
   </section>
   
   <section id="pmp-delete">
-    <title>Remove Music From your Portable Music Player</title>
-    <p>To remove songs stored on your portable music player, choose your
-    player in Banshee to view its library.  Then choose the tracks you would
-    like to remove and right click the tracks and choose "Delete" or from the 
-    menu choose <guiseq><gui>Edit</gui><gui>Delete</gui></guiseq>.</p>
+    <title>Odstranite glasbo iz svojega prenosnega predvajalnika glasbe</title>
+    <p>Za odstranitev skladb shranjenih na prenosnem predvajalniku glasbe v Banshee izberite svoj predvajalnik za ogled njegove knjižnice. Nato izberite skladbe, ki jih želite izbrisati in izberite "Izbriši" ali v meniju izberite <guiseq><gui>Uredi</gui><gui>Izbriši</gui></guiseq>.</p>
     
      <note style="warning">
-      <p>Deleting files from your portable music will permanently remove
-      the files and you will not be able to recover them.      
-      </p>
+      <p>Izbris datotek z vašega prenosnega glasbenega predvajalnika bo trajno izbrisal datoteke in ne boste jih mogli obnoviti.</p>
     </note>
     
   </section>
diff --git a/help/sl/ui.page b/help/sl/ui.page
index 3732429..d09db1b 100644
--- a/help/sl/ui.page
+++ b/help/sl/ui.page
@@ -4,9 +4,7 @@
   <info>
     <link type="guide" xref="index"/>
     <revision pkgversion="2.0" version="0.1" date="2010-05-19" status="stub"/>
-    <desc>
-      An overview of <app>Banshee's</app> user interface.
-    </desc>
+    <desc>Pregled uporabniškega vmesnika <app>Banshee</app>.</desc>
     <credit type="author">
       <name>Paul Cutler</name>
       <email>pcutler at gnome.org</email>
@@ -20,64 +18,41 @@
     <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
   </info>
 
-  <title>Introduction to the Banshee User Interface</title>
+  <title>Uvod v uporabniški vmesnik Banshee</title>
 
   <figure>
-    <title><gui>Banshee Media Player</gui> window</title>
-    <desc><app>Banshee Media Player</app></desc>
+    <title>Okno <gui>Banshee predvajalnik večpredstavnostnih datotek</gui></title>
+    <desc><app>Banshee predvajalnik večpredstavnostnih datotek</app></desc>
     <media type="image" src="figures/banshee.png" mime="image/png" style="right">
-      <p><app>Banshee</app> library interface</p>
+      <p>Vmesnik knjižnice <app>Banshee</app></p>
     </media>
   </figure>
   
 <section id="context">
-  <title>Sources</title>
-    <p>Your music and video sources are shown on the left in Banshee.  The
-    sources give you quick access to your Play Queue, Music, Videos, Amazon,
-    Last.fm, Podcasts and more.
-    </p>
+  <title>Viri</title>
+    <p>Viri vaše glasbe in videov so v Banshee prikazani na levi.  Viri vam omogočajo hiter   dostop do vaše predvajalne vrste, Glasbe, Videov, Amazona, Last.fm, Podcastov in več.                </p>
     
     <note style="tip">
-      <p>The menu choices will change depending on the source you have chosen.
-      For example, to use the menu to import a Podcast, you will need to choose
-      the Podcast source.  The menu option for importing a Podcast is not
-      available when viewing the video or music library.</p>
+      <p>Izbire menija se bodo spremenile glede na izbrani vir. Na primer, če hočete videti meni za uvoz podcasta, boste morali izbrati vir Podcast. Možnost menija za uvažanje podcasta ni na voljo pri ogledovanju video ali glasbene knjižnice.</p>
     </note> 
 </section>
 
 <section id="browser">
-  <title>Library Browser</title>
-  <p>When you select a music or video source from Sources, Banshee will 
-  display your content in the Library browser.  Depending on the source
-  you choose, Banshee can display your music or video library, Podcast
-  subscriptions or even the Amazon Music Store to allow you to buy music.</p>
+  <title>Brskalnik knjižnice</title>
+  <p>Ko iz virov izberete vir glasbe ali videa, bo Banshee vašo vsebino prikazal v brskalniku knjižnice. Glede na izbrani vir lahko Banshee prikaže vašo glasbeno ali video knjižnico, naročila podcastov ali celo glasbeno trgovino Amazon, ki vam omogoča nakup slabe.</p>
 </section>
 
 <section id="nowplaying">
-  <title>Now Playing View</title>
-  <p>Helpful when using Banshee in full screen mode, the Now Playing mode
-  hides the library to give you a larger view of the music or video you're 
-  watching.   When listening to music, the Now Playing view will show you 
-  the artist name, album and cover art if available.  If you are watching
-  a video, Banshee will display the video.</p>
+  <title>Pogled sedaj se predvaja</title>
+  <p>Način Predvaja se skrije knjižnico in vam da večji pogled glasbe in videov, ki jih gledate. Zato je uporaben v celozaslonskem načinu. Med poslušanjem glasbe vam bo pogled Predvaja se prikazal ime izvajalca, album in ovitek, če je na voljo. Če gledate video, bo Banshee prikazal video.</p>
   
-  <p>To change Now Playing to hide the Banshee user interface and use the full
-  screen mode, you can press the <key>F</key>, press the <gui>Fullscreen</gui> 
-  button in the upper right hand corner of Banshee, or choose 
-  <guiseq>View<gui/>Fullscreen<gui/></guiseq> to start Fullscreen
-  mode.</p>
+  <p>Za skritje uporabniškega vmesnika Banshee in uporabo celozaslonskega načina lahko pritisnete <key>F</key>, pritisnete gumb <gui>Celozaslonski način</gui> v zgornjem desnem kotu programa ali izberete <guiseq><gui>Pogled<gui/><gui>Celozaslonski način<gui/>seq></gui></gui></guiseq></p>
   
 </section>
 
 <section id="library">
-  <title>Library</title>
-  <p>The Library view in Banshee will change depending on the Source you have 
-  chosen.  The Music Library will display cover art, artists in your library, 
-  and list of songs.  The Podcast Library will display your Podcast 
-  subscriptions, podcasts that are downloaded or not downloaded, and all, new
-  or old podcasts.  Please see each Source's help page for detailed information
-  on managing a source.
-  </p>
+  <title>Knjižnica</title>
+  <p>Pogled knjižnice se bo v Banshee spremenil glede na vaš izbrani vir. Glasbena knjižnica bo prikazala ovitke, izvajalce v vaši knjižnici in seznam skladb. Knjižnica podcastov bo prikazala vaša naročila podcastov, prejete in ne prejete podcaste in vse, nove in stare podcaste. Oglejte si stran pomoči vsakega vira za podrobnosti o upravljanju virov. </p>
 </section>
 
 
diff --git a/install-sh b/install-sh
index a5897de..6781b98 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2006-12-25.00
+scriptversion=2009-04-28.21; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -515,5 +515,6 @@ done
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
diff --git a/libbanshee/Makefile.in b/libbanshee/Makefile.in
index a11b2d8..202cdba 100644
--- a/libbanshee/Makefile.in
+++ b/libbanshee/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -18,8 +19,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -82,14 +84,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(bansheelibdir)"
-bansheelibLTLIBRARIES_INSTALL = $(INSTALL)
 LTLIBRARIES = $(bansheelib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 libbanshee_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
@@ -115,6 +132,7 @@ libbanshee_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
+am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
@@ -248,29 +266,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -305,6 +304,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -346,9 +346,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -470,14 +473,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  libbanshee/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  libbanshee/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libbanshee/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign libbanshee/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -495,23 +498,28 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-bansheelibLTLIBRARIES: $(bansheelib_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
 	test -z "$(bansheelibdir)" || $(MKDIR_P) "$(DESTDIR)$(bansheelibdir)"
-	@list='$(bansheelib_LTLIBRARIES)'; for p in $$list; do \
+	@list='$(bansheelib_LTLIBRARIES)'; test -n "$(bansheelibdir)" || list=; \
+	list2=; for p in $$list; do \
 	  if test -f $$p; then \
-	    f=$(am__strip_dir) \
-	    echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(bansheelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(bansheelibdir)/$$f'"; \
-	    $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(bansheelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(bansheelibdir)/$$f"; \
+	    list2="$$list2 $$p"; \
 	  else :; fi; \
-	done
+	done; \
+	test -z "$$list2" || { \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(bansheelibdir)'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(bansheelibdir)"; \
+	}
 
 uninstall-bansheelibLTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(bansheelib_LTLIBRARIES)'; for p in $$list; do \
-	  p=$(am__strip_dir) \
-	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(bansheelibdir)/$$p'"; \
-	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(bansheelibdir)/$$p"; \
+	@list='$(bansheelib_LTLIBRARIES)'; test -n "$(bansheelibdir)" || list=; \
+	for p in $$list; do \
+	  $(am__strip_dir) \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(bansheelibdir)/$$f'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(bansheelibdir)/$$f"; \
 	done
 
 clean-bansheelibLTLIBRARIES:
@@ -548,21 +556,21 @@ distclean-compile:
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
@@ -578,14 +586,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -593,29 +601,34 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -636,13 +649,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -674,6 +691,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -696,6 +714,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -704,18 +724,28 @@ install-data-am: install-bansheelibLTLIBRARIES
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -761,6 +791,7 @@ all: $(top_builddir)/bin/libbanshee.so
 $(top_builddir)/bin/libbanshee.so: libbanshee.la
 	mkdir -p $(top_builddir)/bin
 	cp -f .libs/libbanshee.so $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/libbanshee/banshee-player-pipeline.c b/libbanshee/banshee-player-pipeline.c
index ce16a48..6bca604 100644
--- a/libbanshee/banshee-player-pipeline.c
+++ b/libbanshee/banshee-player-pipeline.c
@@ -193,13 +193,6 @@ bp_pipeline_bus_callback (GstBus *bus, GstMessage *message, gpointer userdata)
             GError *error;
             gchar *debug;
             
-            // FIXME: This is to work around a bug in qtdemux in
-            // -good <= 0.10.6
-            if (message->src != NULL && message->src->name != NULL && 
-                strncmp (message->src->name, "qtdemux", 7) == 0) {
-                break;
-            }
-            
             _bp_pipeline_destroy (player);
             
             if (player->error_cb != NULL) {
@@ -302,8 +295,9 @@ _bp_pipeline_construct (BansheePlayer *player)
         player->supports_stream_volume ? "YES" : "NO");
 
 #ifdef ENABLE_GAPLESS
-    // Connect a proxy about-to-finish callback that will generate a next-track-starting callback.
+    // FIXME: Connect a proxy about-to-finish callback that will generate a next-track-starting callback.
     // This can be removed once playbin2 generates its own next-track signal.
+    // bgo#584987 - this is included in >= 0.10.26
     g_signal_connect (player->playbin, "about-to-finish", G_CALLBACK (bp_about_to_finish_callback), player);
 #endif //ENABLE_GAPLESS
 
diff --git a/ltmain.sh b/ltmain.sh
index b36c4ad..7ed280b 100755
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -1,6 +1,6 @@
 # Generated from ltmain.m4sh.
 
-# ltmain.sh (GNU libtool) 2.2.6
+# ltmain.sh (GNU libtool) 2.2.6b
 # Written by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.
@@ -65,7 +65,7 @@
 #       compiler:		$LTCC
 #       compiler flags:		$LTCFLAGS
 #       linker:		$LD (gnu? $with_gnu_ld)
-#       $progname:		(GNU libtool) 2.2.6
+#       $progname:		(GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu1
 #       automake:		$automake_version
 #       autoconf:		$autoconf_version
 #
@@ -73,9 +73,9 @@
 
 PROGRAM=ltmain.sh
 PACKAGE=libtool
-VERSION=2.2.6
+VERSION="2.2.6b Debian-2.2.6b-2ubuntu1"
 TIMESTAMP=""
-package_revision=1.3012
+package_revision=1.3017
 
 # Be Bourne compatible
 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
@@ -116,15 +116,15 @@ $lt_unset CDPATH
 
 : ${CP="cp -f"}
 : ${ECHO="echo"}
-: ${EGREP="/usr/bin/grep -E"}
-: ${FGREP="/usr/bin/grep -F"}
-: ${GREP="/usr/bin/grep"}
+: ${EGREP="/bin/grep -E"}
+: ${FGREP="/bin/grep -F"}
+: ${GREP="/bin/grep"}
 : ${LN_S="ln -s"}
 : ${MAKE="make"}
 : ${MKDIR="mkdir"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
-: ${SED="/opt/local/bin/gsed"}
+: ${SED="/bin/sed"}
 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
 : ${Xsed="$SED -e 1s/^X//"}
 
@@ -5033,7 +5033,10 @@ func_mode_link ()
 	case $pass in
 	dlopen) libs="$dlfiles" ;;
 	dlpreopen) libs="$dlprefiles" ;;
-	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+	link)
+	  libs="$deplibs %DEPLIBS%"
+	  test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
+	  ;;
 	esac
       fi
       if test "$linkmode,$pass" = "lib,dlpreopen"; then
@@ -5344,19 +5347,19 @@ func_mode_link ()
 	    # It is a libtool convenience library, so add in its objects.
 	    convenience="$convenience $ladir/$objdir/$old_library"
 	    old_convenience="$old_convenience $ladir/$objdir/$old_library"
+	    tmp_libs=
+	    for deplib in $dependency_libs; do
+	      deplibs="$deplib $deplibs"
+	      if $opt_duplicate_deps ; then
+		case "$tmp_libs " in
+		*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+		esac
+	      fi
+	      tmp_libs="$tmp_libs $deplib"
+	    done
 	  elif test "$linkmode" != prog && test "$linkmode" != lib; then
 	    func_fatal_error "\`$lib' is not a convenience library"
 	  fi
-	  tmp_libs=
-	  for deplib in $dependency_libs; do
-	    deplibs="$deplib $deplibs"
-	    if $opt_duplicate_deps ; then
-	      case "$tmp_libs " in
-	      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-	      esac
-	    fi
-	    tmp_libs="$tmp_libs $deplib"
-	  done
 	  continue
 	fi # $pass = conv
 
@@ -5893,6 +5896,7 @@ func_mode_link ()
 	  if test "$link_all_deplibs" != no; then
 	    # Add the search paths of all dependency libraries
 	    for deplib in $dependency_libs; do
+	      path=
 	      case $deplib in
 	      -L*) path="$deplib" ;;
 	      *.la)
@@ -6206,6 +6210,9 @@ func_mode_link ()
 	    revision="$number_minor"
 	    lt_irix_increment=no
 	    ;;
+	  *)
+	    func_fatal_configuration "$modename: unknown library version type \`$version_type'"
+	    ;;
 	  esac
 	  ;;
 	no)
diff --git a/missing b/missing
index 1c8ff70..28055d2 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
 
-scriptversion=2006-05-10.23
+scriptversion=2009-04-28.21; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-#   Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
+# 2008, 2009 Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,7 @@ scriptversion=2006-05-10.23
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -89,6 +87,9 @@ Supported PROGRAM values:
   tar          try tar, gnutar, gtar, then tar without non-portable flags
   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 
+Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
+\`g' are ignored when checking the name.
+
 Send bug reports to <bug-automake at gnu.org>."
     exit $?
     ;;
@@ -106,15 +107,22 @@ Send bug reports to <bug-automake at gnu.org>."
 
 esac
 
+# normalize program name to check for.
+program=`echo "$1" | sed '
+  s/^gnu-//; t
+  s/^gnu//; t
+  s/^g//; t'`
+
 # Now exit if we have it, but it failed.  Also exit now if we
 # don't have it and --version was passed (most likely to detect
-# the program).
+# the program).  This is about non-GNU programs, so use $1 not
+# $program.
 case $1 in
-  lex|yacc)
+  lex*|yacc*)
     # Not GNU programs, they don't have --version.
     ;;
 
-  tar)
+  tar*)
     if test -n "$run"; then
        echo 1>&2 "ERROR: \`tar' requires --run"
        exit 1
@@ -138,7 +146,7 @@ esac
 
 # If it does not exist, or fails to run (possibly an outdated version),
 # try to emulate it.
-case $1 in
+case $program in
   aclocal*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
@@ -148,7 +156,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch aclocal.m4
     ;;
 
-  autoconf)
+  autoconf*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`${configure_ac}'.  You might want to install the
@@ -157,7 +165,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch configure
     ;;
 
-  autoheader)
+  autoheader*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
@@ -187,7 +195,7 @@ WARNING: \`$1' is $msg.  You should only need it if
 	   while read f; do touch "$f"; done
     ;;
 
-  autom4te)
+  autom4te*)
     echo 1>&2 "\
 WARNING: \`$1' is needed, but is $msg.
          You might have modified some files without having the
@@ -210,7 +218,7 @@ WARNING: \`$1' is needed, but is $msg.
     fi
     ;;
 
-  bison|yacc)
+  bison*|yacc*)
     echo 1>&2 "\
 WARNING: \`$1' $msg.  You should only need it if
          you modified a \`.y' file.  You may need the \`Bison' package
@@ -240,7 +248,7 @@ WARNING: \`$1' $msg.  You should only need it if
     fi
     ;;
 
-  lex|flex)
+  lex*|flex*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.l' file.  You may need the \`Flex' package
@@ -263,7 +271,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     fi
     ;;
 
-  help2man)
+  help2man*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
 	 you modified a dependency of a manual page.  You may need the
@@ -277,11 +285,11 @@ WARNING: \`$1' is $msg.  You should only need it if
     else
 	test -z "$file" || exec >$file
 	echo ".ab help2man is required to generate this page"
-	exit 1
+	exit $?
     fi
     ;;
 
-  makeinfo)
+  makeinfo*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -310,7 +318,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch $file
     ;;
 
-  tar)
+  tar*)
     shift
 
     # We have already tried tar in the generic part.
@@ -363,5 +371,6 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 57ef267..cc8a222 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -21,7 +21,7 @@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
 PACKAGE = @PACKAGE@
 VERSION = @VERSION@
 
-SHELL = /bin/sh
+SHELL = @SHELL@
 
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
@@ -56,7 +56,7 @@ ALL_LINGUAS = @ALL_LINGUAS@
 
 PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi)
 
-USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep ^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep ^$$lang$$`"; then printf "$$lang "; fi; done; fi)
+USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi)
 
 USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
 
@@ -129,7 +129,7 @@ install-data-yes: all
 	done
 
 # Empty stubs to satisfy archaic automake needs
-dvi info tags TAGS ID:
+dvi info ctags tags CTAGS TAGS ID:
 
 # Define this as empty until I found a useful application.
 install-exec installcheck:
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 3d100ce..2558bc7 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -54,7 +54,6 @@ src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs
 src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs
 src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs
 src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs
-src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs
 src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs
 src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs
 src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs
@@ -134,7 +133,6 @@ src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs
 src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
 src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
 src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs
-src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs
 src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileComboBox.cs
 src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs
 src/Core/Banshee.ThickClient/Banshee.Playlist.Gui/PlaylistExportDialog.cs
diff --git a/po/eu.po b/po/eu.po
index e13f9c9..1886c13 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -1,20 +1,21 @@
-# translation of eu2.po to Basque
+# translation of eu.po to Basque
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Iñaki Larrañaga Murgoitio <dooteo at euskalgnu.org>, 2008, 2009, 2010.
+# Iñaki Larrañaga Murgoitio <dooteo at zundan.com>, 2010.
 msgid ""
 msgstr ""
-"Project-Id-Version: eu2\n"
+"Project-Id-Version: eu\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=banshee&component=general\n"
-"POT-Creation-Date: 2010-10-22 12:56+0000\n"
-"PO-Revision-Date: 2010-10-22 19:08+0200\n"
+"POT-Creation-Date: 2010-11-18 19:29+0000\n"
+"PO-Revision-Date: 2010-11-19 17:58+0100\n"
 "Last-Translator: Iñaki Larrañaga Murgoitio <dooteo at euskalgnu.org>\n"
 "Language-Team: Basque <itzulpena at euskalgnu.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms:  nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. ../src/Backends/Banshee.Gio/Banshee.Gio.addin.xml
@@ -417,7 +418,7 @@ msgstr ""
 #: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:193
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/PodcastGroupSource.cs:38
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:107
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:207
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:212
 msgid "Podcasts"
 msgstr "Podcast-ak"
 
@@ -745,7 +746,7 @@ msgstr "Windows Media Audio"
 
 #: ../data/desktop-files/common.desktop.in.h:1
 #: ../src/Clients/Muinshee/Muinshee/PlayerInterface.cs:76
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:105
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:107
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:206
 #: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:60
 msgid "Banshee Media Player"
@@ -845,11 +846,11 @@ msgstr "Grabatu CDa..."
 msgid "Write selected tracks to an audio CD"
 msgstr "Grabatu hautatutako pistak Audio CD batean"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:104
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
 msgid "Could not write CD"
 msgstr "Ezin izan da CDa grabatu"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:106
 msgid "Brasero could not be started"
 msgstr "Ezin izan da Brasero abiarazi"
 
@@ -870,7 +871,7 @@ msgid "Could not create BPM detection driver."
 msgstr "Ezin izan da BPMak detektatzeko kontrolatzailea sortu."
 
 #: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:82
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:766
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:771
 msgid "Enable _gapless playback"
 msgstr "Gaitu _tarterik gabeko erreprodukzioa"
 
@@ -883,19 +884,19 @@ msgstr ""
 "eta musika klasikoan."
 
 #: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:150
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:187
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:192
 msgid "Could not initialize GStreamer library"
 msgstr "Ezin izan da GStreamer liburutegia hasieratu"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:430
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:435
 msgid "Unknown Error"
 msgstr "Errore ezezaguna"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:760
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:765
 msgid "_Enable ReplayGain correction"
 msgstr "_Gaitu 'ReplayGain' zuzenketa"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:761
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:766
 msgid ""
 "For tracks that have ReplayGain data, automatically scale (normalize) "
 "playback volume"
@@ -903,7 +904,7 @@ msgstr ""
 "ReplayGain (erreprodukzio irabazia) datuak dituzten pistetan eskalatu "
 "automatikoki (normalizatu) erreprodukzioaren bolumena"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:767
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:772
 msgid ""
 "Eliminate the small playback gap on track change.  Useful for concept albums "
 "and classical music."
@@ -925,65 +926,65 @@ msgid "_Close"
 msgstr "It_xi"
 
 #: ../src/Backends/Banshee.Osx/Banshee.OsxBackend/OsxService.cs:92
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:249
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:251
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:79
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:133
 msgid "Close"
 msgstr "Itxi"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:148
+#: ../src/Clients/Booter/Booter/Entry.cs:152
 msgid "Help Options"
 msgstr "Laguntzaren aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:149
+#: ../src/Clients/Booter/Booter/Entry.cs:153
 msgid "Show this help"
 msgstr "Erakutsi laguntza hau"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:150
+#: ../src/Clients/Booter/Booter/Entry.cs:154
 msgid "Show options for controlling playback"
 msgstr "Erakutsi aukerak erreprodukzioa kontrolatzeko"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:151
+#: ../src/Clients/Booter/Booter/Entry.cs:155
 msgid "Show options for querying the playing track"
 msgstr "Erakutsi aukerak erreprodukzioko pistak kontsultatzeko"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:152
+#: ../src/Clients/Booter/Booter/Entry.cs:156
 msgid "Show options for querying the playing engine"
 msgstr "Erakutsi aukerak erreprodukzio-motorra kontsultatzeko"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:153
+#: ../src/Clients/Booter/Booter/Entry.cs:157
 msgid "Show options for the user interface"
 msgstr "Erakutsi erabiltzaile-interfazearen aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:154
+#: ../src/Clients/Booter/Booter/Entry.cs:158
 msgid "Show options for developers and debugging"
 msgstr "Erakutsi garatzaileen eta arazketaren aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:155
+#: ../src/Clients/Booter/Booter/Entry.cs:159
 msgid "Show all option groups"
 msgstr "Erakutsi aukeren talde guztia"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:156
+#: ../src/Clients/Booter/Booter/Entry.cs:160
 msgid "Show version information"
 msgstr "Erakutsi bertsio-informazioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:159
+#: ../src/Clients/Booter/Booter/Entry.cs:163
 msgid "Playback Control Options"
 msgstr "Erreprodukzio-kontrolaren aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:160
+#: ../src/Clients/Booter/Booter/Entry.cs:164
 msgid "Play the next track, optionally restarting if the 'restart' value is set"
 msgstr ""
 "Erreproduzitu hurrengo pista, aukeran berrabiaraztea 'berrabiarazi' ezartzen "
 "bada"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:161
+#: ../src/Clients/Booter/Booter/Entry.cs:165
 msgid "Play the previous track, optionally restarting if the 'restart value is set"
 msgstr ""
 "Erreproduzitu aurreko pista, aukeran berrabiaraztea 'berrabiarazi' ezartzen "
 "bada"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:162
+#: ../src/Clients/Booter/Booter/Entry.cs:166
 msgid ""
 "If the current song has been played longer than 4 seconds then restart it, "
 "otherwise the same as --previous"
@@ -991,27 +992,27 @@ msgstr ""
 "Uneko abestia 4 segundo baino gehiago erreproduzitzen aritu bada hura "
 "berrabiatu, bestela aurrekoaren bezala"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:163
+#: ../src/Clients/Booter/Booter/Entry.cs:167
 msgid "Automatically start playing any tracks enqueued on the command line"
 msgstr "Hasi komando-lerroan ilaratutako edozein pista automatikoki erreproduzitzen"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:164
+#: ../src/Clients/Booter/Booter/Entry.cs:168
 msgid "Start playback"
 msgstr "Hasi erreprodukzioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:165
+#: ../src/Clients/Booter/Booter/Entry.cs:169
 msgid "Pause playback"
 msgstr "Gelditu erreprodukzioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:166
+#: ../src/Clients/Booter/Booter/Entry.cs:170
 msgid "Toggle playback"
 msgstr "Txandakatu erreprodukzioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:167
+#: ../src/Clients/Booter/Booter/Entry.cs:171
 msgid "Completely stop playback"
 msgstr "Gelditu erabat erreprodukzioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:169
+#: ../src/Clients/Booter/Booter/Entry.cs:173
 msgid ""
 "Enable or disable playback stopping after the currently playing track (value "
 "should be either 'true' or 'false')"
@@ -1019,97 +1020,97 @@ msgstr ""
 "Gaitu edo desgaitu erreprodukzioa gelditzea uneko pista erreproduzitu "
 "ondoren (balioa 'true' edo 'false' izan daiteke)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:170
+#: ../src/Clients/Booter/Booter/Entry.cs:174
 msgid "Set the playback volume (0-100), prefix with +/- for relative values"
 msgstr ""
 "Ezarri erreprodukzioaren bolumena (0-100), jarri +/- aurrizki gisa balio "
 "erlatiboentzako"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:171
+#: ../src/Clients/Booter/Booter/Entry.cs:175
 msgid "Seek to a specific point (seconds, float)"
 msgstr "Joan puntu zehatz batera (segundoak, mugikorra)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:172
+#: ../src/Clients/Booter/Booter/Entry.cs:176
 msgid "Set the currently played track's rating (0 to 5)"
 msgstr "Ezarri unean erreproduzitutako pistaren balorazioa (0tik 5era)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:175
+#: ../src/Clients/Booter/Booter/Entry.cs:179
 msgid "Player Engine Query Options"
 msgstr "Erreprodukzio-motorraren kontsulten aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:176
+#: ../src/Clients/Booter/Booter/Entry.cs:180
 msgid "Current player state"
 msgstr "Uneko erreproduzitzailearen egoera"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:177
+#: ../src/Clients/Booter/Booter/Entry.cs:181
 msgid "Last player state"
 msgstr "Azkeneko erreproduzitzailearen egoera"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:178
+#: ../src/Clients/Booter/Booter/Entry.cs:182
 msgid "Query whether the player can be paused"
 msgstr "Kontsultatu erreproduzitzailea pausarazi daitekeen edo ez"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:179
+#: ../src/Clients/Booter/Booter/Entry.cs:183
 msgid "Query whether the player can seek"
 msgstr "Kontsultatu erreproduzitzaileak posizio batera joan daitekeen edo ez"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:180
+#: ../src/Clients/Booter/Booter/Entry.cs:184
 msgid "Player volume"
 msgstr "Erreproduzitzailearen bolumena"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:181
+#: ../src/Clients/Booter/Booter/Entry.cs:185
 msgid "Player position in currently playing track"
 msgstr "Erreproduzitzailearen posizioa uneko erreprodukzioko pistan"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:184
+#: ../src/Clients/Booter/Booter/Entry.cs:188
 msgid "Playing Track Metadata Query Options"
 msgstr "Erreprodukzio-pistaren metadatuen kontsultaren aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:185
+#: ../src/Clients/Booter/Booter/Entry.cs:189
 msgid "URI"
 msgstr "URIa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:186
+#: ../src/Clients/Booter/Booter/Entry.cs:190
 #: ../src/Clients/Nereid/Nereid/ViewContainer.cs:138
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:89
 msgid "Artist Name"
 msgstr "Artistaren izena"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:187
+#: ../src/Clients/Booter/Booter/Entry.cs:191
 #: ../src/Clients/Nereid/Nereid/ViewContainer.cs:140
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:90
 msgid "Album Title"
 msgstr "Albumaren izenburua"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:188
+#: ../src/Clients/Booter/Booter/Entry.cs:192
 #: ../src/Clients/Nereid/Nereid/ViewContainer.cs:137
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:88
 msgid "Track Title"
 msgstr "Pistaren izenburua"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:189
+#: ../src/Clients/Booter/Booter/Entry.cs:193
 msgid "Duration"
 msgstr "Iraupena"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:190
+#: ../src/Clients/Booter/Booter/Entry.cs:194
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:117
 msgid "Track Number"
 msgstr "Pista-zenbakia"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:191
+#: ../src/Clients/Booter/Booter/Entry.cs:195
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:126
 msgid "Track Count"
 msgstr "Pistaren kontagailua"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:192
+#: ../src/Clients/Booter/Booter/Entry.cs:196
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:149
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:114
 msgid "Disc Number"
 msgstr "Disko-zenbakia"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:193
+#: ../src/Clients/Booter/Booter/Entry.cs:197
 #: ../src/Clients/Nereid/Nereid/ViewContainer.cs:142
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:113
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:177
@@ -1120,7 +1121,7 @@ msgstr "Disko-zenbakia"
 msgid "Year"
 msgstr "Urtea"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:194
+#: ../src/Clients/Booter/Booter/Entry.cs:198
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:230
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:131
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:60
@@ -1128,78 +1129,78 @@ msgstr "Urtea"
 msgid "Rating"
 msgstr "Balorazioa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:195
+#: ../src/Clients/Booter/Booter/Entry.cs:199
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:322
 msgid "Score"
 msgstr "Puntuazioa"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:196
+#: ../src/Clients/Booter/Booter/Entry.cs:200
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:143
 msgid "Bit Rate"
 msgstr "Bit-emaria"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:199
+#: ../src/Clients/Booter/Booter/Entry.cs:203
 msgid "User Interface Options"
 msgstr "Erabiltzaile-interfazearen aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:200
+#: ../src/Clients/Booter/Booter/Entry.cs:204
 msgid "Present the user interface on the active workspace"
 msgstr "Agertu erabiltzaile-interfazea laneko area aktiboan"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:201
+#: ../src/Clients/Booter/Booter/Entry.cs:205
 msgid "Enter the full-screen mode"
 msgstr "Sartu pantaila osoko moduan"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:202
+#: ../src/Clients/Booter/Booter/Entry.cs:206
 msgid "Hide the user interface"
 msgstr "Ezkutatu erabiltzaile-interfazea"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:203
+#: ../src/Clients/Booter/Booter/Entry.cs:207
 msgid "Do not present the user interface, regardless of any other options"
 msgstr "Ez agertu erabiltzaile-interfazea, beste aukerak kontutan hartu gabe"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:204
+#: ../src/Clients/Booter/Booter/Entry.cs:208
 msgid "Present the import media dialog box"
 msgstr "Aurkeztu multimedia inportatzeko elkarrizketa-koadroa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:205
+#: ../src/Clients/Booter/Booter/Entry.cs:209
 msgid "Present the about dialog"
 msgstr "Aurkeztu 'Honi buruz' elkarrizketa-koadroa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:206
+#: ../src/Clients/Booter/Booter/Entry.cs:210
 msgid "Present the open location dialog"
 msgstr "Aurkeztu kokalekua irekitzeko elkarrizketa-koadroa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:207
+#: ../src/Clients/Booter/Booter/Entry.cs:211
 msgid "Present the preferences dialog"
 msgstr "Aurkeztu hobespenen elkarrizketa-koadroa"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:210
+#: ../src/Clients/Booter/Booter/Entry.cs:214
 msgid "Debugging and Development Options"
 msgstr "Arazketa eta garapenerako aukerak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:211
+#: ../src/Clients/Booter/Booter/Entry.cs:215
 msgid "Enable general debugging features"
 msgstr "Gaitu arazketaren eginbide orokorrak"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:212
+#: ../src/Clients/Booter/Booter/Entry.cs:216
 msgid "Enable debugging output of SQL queries"
 msgstr "Gaitu SQL kontsulten irteera araztea"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:213
+#: ../src/Clients/Booter/Booter/Entry.cs:217
 msgid "Enable debugging output of Mono.Addins"
 msgstr "Gaitu Mono.Addins-en irteera araztea"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:214
+#: ../src/Clients/Booter/Booter/Entry.cs:218
 msgid "Specify an alternate database to use"
 msgstr "Zehaztu bestelako datu-basea erabiltzeko"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:215
+#: ../src/Clients/Booter/Booter/Entry.cs:219
 msgid "Specify an alternate key, default is /apps/banshee-1/"
 msgstr "Zehaztu bestelako gako bat (lehenetsia: /apps/banshee-1/)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:216
+#: ../src/Clients/Booter/Booter/Entry.cs:220
 msgid ""
 "Optimize instance for running uninstalled; most notably, this will create an "
 "alternate Mono.Addins database in the working directory"
@@ -1207,16 +1208,16 @@ msgstr ""
 "Optimizatu instantzia instalatu gabe exekutatzeko. Honek beste Mono.Addins "
 "datu-basea sortuko du laneko direktorioan"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:218
+#: ../src/Clients/Booter/Booter/Entry.cs:222
 msgid "Disable DBus support completely"
 msgstr "Desgaitu DBus euskarria erabat"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:220
+#: ../src/Clients/Booter/Booter/Entry.cs:224
 #, csharp-format
 msgid "Skip loading a custom gtkrc file ({0}) if it exists"
 msgstr "Saltatu gtkrc fitxategi ({0}) pertsonalizatua kargatzea existitzen bada"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:251
+#: ../src/Clients/Booter/Booter/Entry.cs:255
 #, csharp-format
 msgid "The following help arguments are invalid: {0}"
 msgstr "Honako laguntza-argumentuak ez dira baliozkoak: {0}"
@@ -1232,7 +1233,7 @@ msgstr "_Ilaratu"
 #: ../src/Clients/Muinshee/Muinshee/BaseDialog.cs:86
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:196
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:86
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:126
 msgid "_Play"
 msgstr "_Erreproduzitu"
 
@@ -1262,7 +1263,7 @@ msgid "Play Song"
 msgstr "Erreproduzitu abestia"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:457
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:465
 msgid "Search"
 msgstr "Bilatu"
 
@@ -1322,7 +1323,7 @@ msgid "Stream location not found"
 msgstr "Korrontearen kokalekua ez da aurkitu"
 
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:324
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:328
 msgid "File not found"
 msgstr "Ez da fitxategia aurkitu"
 
@@ -1354,7 +1355,7 @@ msgstr "_Berrabiarazi bideoa"
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:425
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:86
 msgid "_Restart Song"
-msgstr "_Berrabiarazi kanta"
+msgstr "_Berrabiarazi abestia"
 
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:426
 msgid "_Restart Item"
@@ -1375,7 +1376,7 @@ msgstr "_Joan erreproduzitzen ari den bideora"
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:445
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:82
 msgid "_Jump to Playing Song"
-msgstr "_Joan erreproduzitzen ari den kantara"
+msgstr "_Joan erreproduzitzen ari den abestira"
 
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:446
 msgid "_Jump to Playing Item"
@@ -1383,17 +1384,17 @@ msgstr "_Joan erreproduzitzen ari den elementura"
 
 #. Translators: This is used to generate bookmark names. {0} is track title, {1} is minutes
 #. (possibly more than two digits) and {2} is seconds (between 00 and 60).
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:173
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:172
 #, csharp-format
 msgid "{0} ({1}:{2:00})"
 msgstr "{0} ({1}:{2:00})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:70
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:69
 #, csharp-format
 msgid "All Albums ({0})"
 msgstr "Album guztiak ({0})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:69
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:68
 #, csharp-format
 msgid "All Artists ({0})"
 msgstr "Artista guztiak ({0})"
@@ -1403,17 +1404,17 @@ msgstr "Artista guztiak ({0})"
 msgid "Value"
 msgstr "Balioa"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:49
 msgid "Shuffle by A_lbum"
 msgstr "Ausaz a_lbumaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
 msgid "by album"
 msgstr "albumaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:52
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
 msgid "Play all songs from an album, then randomly choose another album"
-msgstr "Erreproduzitu album bateko kanta guztiak, gero aukeratu ausaz beste album bat"
+msgstr "Erreproduzitu album bateko abesti guztiak, gero aukeratu ausaz beste album bat"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs:49
 msgid "Shuffle by A_rtist"
@@ -1426,32 +1427,32 @@ msgstr "artistaren arabera"
 #: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs:51
 msgid "Play all songs by an artist, then randomly choose another artist"
 msgstr ""
-"Erreproduzitu artista baten kantak guztiak, gero ausaz aukeratu beste "
+"Erreproduzitu artista baten abesti guztiak, gero ausaz aukeratu beste "
 "artista bat"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:36
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
 msgid "Shuffle _Off"
 msgstr "E_z ausaz"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:37
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:39
 msgid "manually"
 msgstr "eskuz"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:40
 msgid "Do not shuffle playlist"
 msgstr "Ez ausaz erreproduzitu zerrenda"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:45
 msgid "Shuffle by _Rating"
 msgstr "Ausaz _balioaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
 msgid "by rating"
 msgstr "balorazioaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
 msgid "Play songs randomly, prefer higher rated songs"
-msgstr "Erreproduzitu kantak ausaz, balio altukoak hobetsi"
+msgstr "Erreproduzitu abestiak ausaz, balio altukoak hobetsi"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs:42
 msgid "Shuffle by S_core"
@@ -1463,26 +1464,26 @@ msgstr "puntuazioaren arabera"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs:44
 msgid "Play songs randomly, prefer higher scored songs"
-msgstr "Erreproduzitu kantak ausaz, puntuazio altukoak hobetsi"
+msgstr "Erreproduzitu abestiak ausaz, puntuazio altukoak hobetsi"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:46
 msgid "Shuffle by _Song"
-msgstr "Ausaz _kantaren arabera"
+msgstr "Ausaz _abestiaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
 msgid "by song"
 msgstr "abestiaren arabera"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:49
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
 msgid "Play songs randomly from the playlist"
-msgstr "Erreproduzitu kantak ausaz erreprodukzio-zerrendatik"
+msgstr "Erreproduzitu abestiak ausaz erreprodukzio-zerrendatik"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:138
 msgid "Scanning for media"
 msgstr "Multimedia eskaneatzen"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:188
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1382
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1384
 msgid "Scanning..."
 msgstr "Eskaneatzea..."
 
@@ -1507,20 +1508,20 @@ msgstr "Inportatze-prozesua martxan dago une honetan. Geldiarazi nahi duzu?"
 msgid "Importing {0} of {1}"
 msgstr "Inportatzen: {0} / {1}"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:78
 #, csharp-format
 msgid "Rescanning {0} of {1}"
 msgstr "Berreskaneatzen: {0} / {1}"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:234
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:232
 msgid "Upgrading your Banshee Database"
 msgstr "Zure Banshee datu-basea eguneratzen"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:235
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:233
 msgid "Please wait while your old Banshee database is migrated to the new format."
 msgstr "Itxaron Banshee-ren datu-base zaharra formatu berrira migratu arte."
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1379
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1381
 msgid "Refreshing Metadata"
 msgstr "Metadatuak freskatzen"
 
@@ -1592,10 +1593,6 @@ msgstr "Rock biguna"
 msgid "Techno"
 msgstr "Teknoa"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs:48
-msgid "Home Folder"
-msgstr "Karpeta nagusia"
-
 #: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:58
 msgid "Remove From Library"
 msgstr "Kendu liburutegitik"
@@ -1671,113 +1668,123 @@ msgid "Grouping"
 msgstr "Taldea"
 
 #. Catalog.GetString ("Music Library")
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:60
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/MusicGroupSource.cs:39
 msgid "Music"
 msgstr "Musika"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:65
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:66
 msgid "Search your music"
 msgstr "Bilatu zure musika"
 
 #. Misc section
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:80
 #: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:65
 msgid "Miscellaneous"
 msgstr "Hainbat"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:82
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:83
 msgid "_Sort an artist's albums by year, not title"
 msgstr "_Ordenatu artista baten albumak urtearekiko (ez tituluarekiko)"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:92
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:93
 #, csharp-format
 msgid "{0} song"
 msgid_plural "{0} songs"
 msgstr[0] "abesti {0}"
 msgstr[1] "{0} abesti"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:113
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:114
 msgid "Music Folder"
 msgstr "Musikaren karpeta"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:118
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
 #: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:95
 msgid "Favorites"
 msgstr "Gogokoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:120
 msgid "Songs rated four and five stars"
-msgstr "Lau eta bost izar dituzten kantak"
+msgstr "Lau eta bost izar dituzten abestiak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:123
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
 msgid "Recent Favorites"
 msgstr "Azken gogokoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:125
 msgid "Songs listened to often in the past week"
-msgstr "Azken astean askotan entzundako kantak"
+msgstr "Azken astean askotan entzundako abestiak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:128
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:95
 msgid "Recently Added"
 msgstr "Oraintsuen gehitutakoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:130
 msgid "Songs imported within the last week"
-msgstr "Azken astean inportatutako kantak"
+msgstr "Azken astean inportatutako abestiak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:133
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
+#| msgid "Most Recently Played"
+msgid "Recently Played"
+msgstr "Oraintsuen erreproduzitutakoak"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:135
+#| msgid "Recently Played Tracks"
+msgid "Recently played songs"
+msgstr "Oraintsuen erreproduzitutako abestiak"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:139
 msgid "Unheard"
 msgstr "Entzun gabeak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:140
 msgid "Songs that have not been played or skipped"
-msgstr "Erreproduzitu ez diren edo saltatu diren kantak"
+msgstr "Erreproduzitu ez diren edo saltatu diren abestiak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:141
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
 msgid "Neglected Favorites"
 msgstr "Jaramonik egin ez zaien gogokoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:142
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:148
 msgid "Favorites not played in over two months"
 msgstr "Bi hilabete baino gehiagotan erreproduzitu ez diren gogokoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:146
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
 msgid "Least Favorite"
 msgstr "Gutxieneko gogokoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:153
 msgid "Songs rated one or two stars or that you have frequently skipped"
-msgstr "Izar bat edo bi dituzten kantak, edo askotan saltatutakoak"
+msgstr "Izar bat edo bi dituzten abestiak, edo askotan saltatutakoak"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:151
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
 msgid "700 MB of Favorites"
 msgstr "Gogokoen 700 MB"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
 msgid "A data CD worth of favorite songs"
-msgstr "Datuen CDa gogoko kantekin osatua"
+msgstr "Gogoko abestiekin osatutako datuen CDa"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
 msgid "80 Minutes of Favorites"
 msgstr "Gogokoen 80 minutu"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
 msgid "An audio CD worth of favorite songs"
-msgstr "Audio CDa gogoko kantekin osatua"
+msgstr "Gogoko abestiekin osatutako Audio CDa"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:169
 msgid "Unrated"
 msgstr "Baloratu gabea"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:170
 msgid "Songs that haven't been rated"
-msgstr "Baloratu ez diren kantak"
+msgstr "Baloratu ez diren abestiak"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:56
 msgid "Importing Songs"
-msgstr "Kantak inportatzea"
+msgstr "Abestiak inportatzea"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:113
 #, csharp-format
@@ -1931,33 +1938,33 @@ msgstr ""
 "Eginbide batzuk Interneterako konexioa eskatzen dute, adib. Last.fm gunea "
 "edo azalen irudiak eskuratzea."
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:160
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:159
 msgid "Search this playlist"
 msgstr "Bilatu erreprodukzio-zerrenda hau"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:229
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:228
 msgid "The track's rating was set differently on the device and in Banshee"
 msgstr "Pistaren balioa desberdina da gailuan eta Banshee-n"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:58
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:309
 msgid "Playlist"
 msgstr "Erreprodukzio-zerrenda"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:133
 msgid "Remove From Playlist"
 msgstr "Kendu erreprodukzio-zerrendatik"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:135
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
 msgid "Delete Playlist"
 msgstr "Ezabatu erreprodukzio-zerrenda"
 
 #. TODO generate name based on the track selection, or begin editing it
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:386
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:392
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:385
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:391
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:176
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:95
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:394
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:135
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:452
 #: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:542
 #: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView_DragAndDrop.cs:214
 msgid "New Playlist"
@@ -2427,7 +2434,7 @@ msgid "importedon"
 msgstr "inportatua"
 
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:315
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:65
 msgid "Smart Playlist"
 msgstr "Erreprodukzio-zerrenda azkarra"
 
@@ -2561,7 +2568,7 @@ msgstr "drm"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:208
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:210
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:212
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:383
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:389
 msgid "Unknown"
 msgstr "Ezezaguna"
 
@@ -2569,26 +2576,26 @@ msgstr "Ezezaguna"
 msgid "unknown"
 msgstr "ezezaguna"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:78
 msgid "Unable to Migrate Smart Playlists"
 msgstr "Ezin da erreprodukzio-zerrenda azkarra migratu"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:80
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
 #, csharp-format
 msgid "Please file a bug with this error: {0}"
 msgstr "Mesedez, eman errore honi buruz berri: {0}"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:67
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:49
 msgid "Edit Smart Playlist"
 msgstr "Editatu erreprodukzio-zerrenda azkarra"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:242
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:249
 msgid "Delete Smart Playlist"
 msgstr "Ezabatu erreprodukzio-zerrenda azkarra"
 
 #: ../src/Core/Banshee.Services/Banshee.Sources/DatabaseSource.cs:147
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:163
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:161
 #, csharp-format
 msgid "All Genres ({0})"
 msgstr "Genero guztiak ({0})"
@@ -2633,7 +2640,7 @@ msgid "Close Error Report"
 msgstr "Itxi errore-txostena"
 
 #: ../src/Core/Banshee.Services/Banshee.Sources/ErrorSource.cs:83
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:226
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:224
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ErrorListDialog.cs:46
 msgid "Error"
 msgstr "Errorea"
@@ -2669,12 +2676,12 @@ msgstr "Karpeta-hie_rarkia"
 msgid "File _name"
 msgstr "Fitxategi-ize_na"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:693
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:669
 #, csharp-format
 msgid "Adding {0} of {1} to {2}"
 msgstr "Gehitzen {0} / {1} {2}(r)i"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:712
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:688
 #, csharp-format
 msgid "Deleting {0} of {1} From {2}"
 msgstr "Kentzen {0} / {1} {2}(e)tik"
@@ -2786,19 +2793,19 @@ msgstr ""
 msgid "{0} of {1}"
 msgstr "{0} / {1}"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:224
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:222
 msgid "Playing"
 msgstr "Erreproduzitzen"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:225
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:223
 msgid "Paused"
 msgstr "Pausatuta"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:227
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:225
 msgid "Protected"
 msgstr "Babestuta"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:228
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:226
 msgid "External Document"
 msgstr "Kanpoko dokumentua"
 
@@ -2892,19 +2899,19 @@ msgstr "Aurrezarpen berria"
 msgid "{0} by {1}"
 msgstr "{0} / {1}"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:86
 msgid "_Bookmarks"
 msgstr "Laster-_markak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:89
 msgid "_Add Bookmark"
 msgstr "_Gehitu laster-marka"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
 msgid "Bookmark the Position in the Current Track"
 msgstr "Egin uneko pistako posizioaren laster-marka"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:104
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:103
 msgid "_Remove Bookmark"
 msgstr "_Kendu laster-marka"
 
@@ -2979,7 +2986,7 @@ msgid "Make Banshee the Default"
 msgstr "Lehenetsi Banshee"
 
 #. Translators: verb
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:52
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:53
 msgid "I_mport"
 msgstr "_Inportatu"
 
@@ -3072,78 +3079,58 @@ msgstr "_Hobespenak"
 msgid "Modify your personal preferences"
 msgstr "Aldatu zure hobespen pertsonalak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:83
-msgid "Manage _Extensions"
-msgstr "Kudeatu _hedapenak"
-
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:84
-msgid "Manage extensions to add new features to Banshee"
-msgstr "Kudeatu hedapenak eginbide berriak gehitzeko Banshee-ri"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:88
 msgid "_Tools"
 msgstr "Tresn_ak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:92
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:88
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:134
 msgid "_Help"
 msgstr "La_guntza"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:91
 msgid "_Contents"
 msgstr "_Edukia"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:99
-msgid "_Web Resources"
-msgstr "_Web-baliabideak"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:102
-msgid "Banshee _User Guide (Wiki)"
-msgstr "Banshee _erabiltzaile-gida (wikia)"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:103
-msgid "Learn about how to use Banshee"
-msgstr "Banshee-ri buruzko informazioa"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:108
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
 msgid "Advanced Collection Searching"
 msgstr "Bilduma bilaketa aurreratua"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:109
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:96
 msgid "Learn advanced ways to search your media collection"
 msgstr "Ikasi bide aurreratuak zure multimedia bilduma bilatzeko"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:114
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:101
 msgid "Banshee _Home Page"
 msgstr "Banshee-ren etxeko orria"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:115
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:102
 msgid "Visit the Banshee Home Page"
 msgstr "Ikusi Banshee-ren etxeko orria"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:120
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:107
 msgid "_Get Involved"
 msgstr "_Parte hartu"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:121
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:108
 msgid "Become a contributor to Banshee"
 msgstr "Izan Banshee-ren laguntzaile"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:126
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:113
 msgid "_Version Information"
 msgstr "_Bertsio-informazioa"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:127
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:114
 msgid "View detailed version and configuration information"
 msgstr "Ikusi bertsioaren eta konfigurazioaren informazio xehatua"
 
 #. Prompt user for location of the playlist.
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:184
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:169
 msgid "Import Playlist"
 msgstr "Inportatu erreprodukzio-zerrenda"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:185
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:559
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:170
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:558
 msgid "Playlists"
 msgstr "Erreprodukzio-zerrendak"
 
@@ -3222,7 +3209,7 @@ msgstr "Errepikatu _denak"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:84
 msgid "Play all songs before repeating playlist"
-msgstr "Erreproduzitu kanta guztiak erreprodukzio-zerrenda errepikatu aurretik"
+msgstr "Erreproduzitu abesti guztiak erreprodukzio-zerrenda errepikatu aurretik"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:88
 msgid "Repeat Singl_e"
@@ -3230,11 +3217,11 @@ msgstr "Errepikatu _bat"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:89
 msgid "Repeat the current playing song"
-msgstr "Errepikatu une honetan erreproduzitzen ari den kanta"
+msgstr "Errepikatu une honetan erreproduzitzen ari den abestia"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:79
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:80
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:83
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
 msgid "Shuffle"
 msgstr "Ausaz"
 
@@ -3311,7 +3298,7 @@ msgstr "Erreprodukzio-zerrenda _azkar berria"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:129
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:84
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:67
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:78
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:72
 msgid "Refresh"
 msgstr "Freskatu"
@@ -3333,150 +3320,150 @@ msgstr "Ziur zaude {0} hau ezabatu nahi duzula?"
 msgid "Separate by Type"
 msgstr "Banandu motaren arabera"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:70
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:110
 msgid "Select _All"
 msgstr "Hautatu _denak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:71
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:111
 msgid "Select all tracks"
 msgstr "Hautatu pista denak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:74
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:114
 msgid "Select _None"
 msgstr "Ez hautatu _bat ere"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:75
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:115
 msgid "Unselect all tracks"
 msgstr "Desautatu pista denak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:78
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:118
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:59
 msgid "_Edit Track Information"
 msgstr "_Editatu pistaren informazioa"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:79
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
 msgid "Edit information on selected tracks"
 msgstr "Editatu hautatutako pisten informazioa"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:82
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:122
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:252
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:114
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:156
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:117
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:159
 msgid "Properties"
 msgstr "Propietateak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:83
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
 msgid "View information on selected tracks"
 msgstr "Ikusi hautatutako pisten informazioa"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
 msgid "Play the selected item"
 msgstr "Erreproduzitu hautatutako elementua"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:130
 msgid "Add _to Playlist"
 msgstr "Gehi_tu erreprodukzio-zerrendara"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:131
 msgid "Append selected items to playlist or create new playlist from selection"
 msgstr ""
 "Erantsi hautatutako elementuak erreprodukzio-zerrendari, edo sortu "
 "erreprodukzio-zerrenda berri bat hautapenarekin"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:96
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:136
 msgid "Create new playlist from selected tracks"
 msgstr "Sortu hautatutako pisten erreprodukzio-zerrenda berria"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:100
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:140
 msgid "_Remove"
 msgstr "_Kendu"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:101
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:141
 msgid "Remove selected track(s) from this source"
 msgstr "Kendu hautatutako pista(k) iturburu honetatik"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:104
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:144
 msgid "Remove From _Library"
 msgstr "Kendu _liburutegitik"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:105
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:145
 msgid "Remove selected track(s) from library"
 msgstr "Kendu hautatutako pista(k) liburutegitik"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:108
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:148
 msgid "_Open Containing Folder"
 msgstr "_Ireki karpetaren edukia"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:109
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:149
 msgid "Open the folder that contains the selected item"
 msgstr "Hautatutako elementuak dituen karpeta ireki"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:112
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:152
 msgid "_Delete From Drive"
 msgstr "_Ezabatu unitatetik"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:113
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:153
 msgid "Permanently delete selected item(s) from medium"
 msgstr "Betiko ezabatu hautatutako elementua(k) euskarritik"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:159
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:170
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:112
 #, csharp-format
 msgid "_Search"
 msgstr "_Bilatu"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:120
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:160
 msgid "Search for items matching certain criteria"
 msgstr "Bilatu irizpide jakin batzuekin bat datozen elementuak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:163
 msgid "By Matching _Album"
 msgstr "_Albumaren arabera"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:124
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:164
 msgid "Search all songs of this album"
-msgstr "Bilatu album honetako kanta guztiak:"
+msgstr "Bilatu album honetako abesti guztiak:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:167
 msgid "By Matching A_rtist"
 msgstr "A_rtistaren arabera"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:128
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:168
 msgid "Search all songs of this artist"
-msgstr "Bilatu artista honen kanta guztiak:"
+msgstr "Bilatu artista honen abesti guztiak:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:258
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:312
 #, csharp-format
 msgid "_Delete From \"{0}\""
 msgstr "_Ezabatu \"{0}\"(e)tik"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:464
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:532
 msgid "The folder could not be found."
 msgstr "Ezin izan da karpeta aurkitu."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:465
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:533
 msgid "Please check that the track's location is accessible by the system."
 msgstr "Egiaztatu sistemak pistaren kokalekua atzi dezakeela."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:535
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:610
 #, csharp-format
 msgid "Are you sure you want to permanently delete this item?"
 msgid_plural "Are you sure you want to permanently delete the selected {0} items?"
 msgstr[0] "Ziur zaude hautatutako elementu {0} behin betiko ezabatu nahi duzula?"
 msgstr[1] "Ziur zaude hautatutako {0} elementuak betiko ezabatu nahi dituzula?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:539
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:614
 msgid "If you delete the selection, it will be permanently lost."
 msgstr "Hautapena ezabatzen baduzu, betiko galduko da."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:542
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:617
 #, csharp-format
 msgid "Remove selection from {0}?"
 msgstr "Kendu hautapena {0}(e)tik?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:545
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:620
 #, csharp-format
 msgid "Are you sure you want to remove the selected item from your {1}?"
 msgid_plural "Are you sure you want to remove the selected {0} items from your {1}?"
@@ -3766,39 +3753,39 @@ msgstr "Fitxategi-tamaina:"
 msgid "bytes"
 msgstr "byte"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Editor"
 msgstr "Pistaren editorea"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Properties"
 msgstr "Pistaren propietateak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:147
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:149
 msgid "Show the previous track"
 msgstr "Erakutsi aurreko pista"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:153
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:155
 msgid "Show the next track"
 msgstr "Erakutsi hurrengo pista"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:183
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
 msgid "Title:"
 msgstr "Izenburua:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:184
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:186
 msgid "Artist:"
 msgstr "Artista:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:187
 msgid "Album:"
 msgstr "Albuma:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:309
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:311
 msgid "Sync all field _values"
 msgstr "Sink. eremu guztien _balioak"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:314
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:316
 msgid ""
 "Apply the values of all common fields set for this track to all of the "
 "tracks selected in this editor"
@@ -3806,23 +3793,23 @@ msgstr ""
 "Editore honetan hautatutako pista guztiei ezartzen dizkie pista honen eremu-"
 "amankomun guztien balioak aplikatu"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:413
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:416
 #, csharp-format
 msgid "<i>Editing {0} of {1} items</i>"
 msgstr "<i>{0} / {1} elementua editatzen</i>"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:675
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:678
 #, csharp-format
 msgid "Save the changes made to the open track?"
 msgid_plural "Save the changes made to {0} of {1} open tracks?"
 msgstr[0] "Irekitako pistan egindako aldaketak gorde?"
 msgstr[1] "Irekitako {0} / {1} pistetan egindako aldaketak gorde?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:692
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:695
 msgid "Close _without Saving"
 msgstr "Itxi gorde ga_be"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:729
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:732
 #, csharp-format
 msgid "If you don't save, changes from the last {0} will be permanently lost."
 msgstr "Ez baduzu gordetzen, azken {0}(r)en aldaketak betiko galduko dira."
@@ -3872,24 +3859,24 @@ msgstr[1] "Ataza aktiboak exekutatzen"
 #. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
 #. are Podcast Name and Published Date, respectively;
 #. e.g. 'from BBtv published 7/26/2007'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:525
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:523
 #, csharp-format
 msgid "{0}from{1} {2} {0}published{1} {3}"
 msgstr "{0}hemendik:{1} {2}. {0}argitaratua:{1} {3}"
 
 #. simply: "Chicago Public Radio" or whatever the artist name is
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:538
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:536
 msgid "Unknown Stream"
 msgstr "Korronte ezezaguna"
 
 #. Translators: {0} and {1} are markup so ignore them, {2} is the name of the radio station
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:541
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:539
 #, csharp-format
 msgid "{0}on{1} {2}"
 msgstr "{0} {1}(e)n {2}"
 
 #. Translators: {0} is the "from {album} by {artist}" type string, and {1} is the "on {radio station name}" string
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:544
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:542
 #, csharp-format
 msgid "{0} {1}"
 msgstr "{0} - {1}"
@@ -3897,14 +3884,14 @@ msgstr "{0} - {1}"
 #. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
 #. are Artist Name and Album Title, respectively;
 #. e.g. 'by Parkway Drive from Killing with a Smile'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:580
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:578
 #, csharp-format
 msgid "{0}by{1} {2} {0}from{1} {3}"
 msgstr "{0}egilea:{1} {2}. {0}albuma:{1} {3}"
 
 #. Translators: {0} and {1} are for markup so ignore them, {2} is for Album Title;
 #. e.g. 'from Killing with a Smile'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:584
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:582
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:522
 #, csharp-format
 msgid "{0}from{1} {2}"
@@ -3912,7 +3899,7 @@ msgstr "{0}albuma:{1} {2}"
 
 #. Translators: {0} and {1} are for markup so ignore them, {2} is for Artist Name;
 #. e.g. 'by Parkway Drive'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:588
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:586
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:526
 #, csharp-format
 msgid "{0}by{1} {2}"
@@ -3966,10 +3953,8 @@ msgid "Files"
 msgstr "Fitxategiak"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:63
-#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:82
-msgid "C_hoose Files"
-msgstr "_Aukeratu fitxategiak"
+msgid "C_hoose Files..."
+msgstr "_Aukeratu fitxategiak..."
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:81
 msgid "_Files to import:"
@@ -3996,8 +3981,8 @@ msgid "Folders"
 msgstr "Karpetak"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:57
-msgid "C_hoose Folders"
-msgstr "_Aukeratu karpetak"
+msgid "C_hoose Folders..."
+msgstr "_Aukeratu karpetak..."
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:75
 msgid "_Folders to import:"
@@ -4029,14 +4014,10 @@ msgstr "Ez erakutsi elkarrizketa-koadro hau aurrerantzean"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:130
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:82
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
 msgid "_Import"
 msgstr "_Inportatu"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs:69
-msgid "Videos From Photos Folder"
-msgstr "Bideoak 'Argazkiak' karpetatik"
-
 #: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileComboBox.cs:86
 msgid "No available profiles"
 msgstr "Ez dago profil erabilgarririk"
@@ -4281,23 +4262,23 @@ msgstr "Produktua"
 msgid "Vendor"
 msgstr "Hornitzailea"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:280
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:137
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:284
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:142
 #, csharp-format
 msgid "Loading {0}"
 msgstr "{0} kargatzen"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:37
 msgid "Yes"
 msgstr "Bai"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:38
 msgid "No"
 msgstr "Ez"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:385
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
 #, csharp-format
 msgid ""
 "The {0} format is not supported by the device, and no converter was found to "
@@ -4306,11 +4287,11 @@ msgstr ""
 "Gailuak ez du {0} formatua onartzen, eta ez da bihurtzailerik aurkitu hura "
 "bihurtzeko."
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:397
 msgid "File format conversion support is not available"
 msgstr "Fitxategi-formatua bihurtzeko euskarria ez dago erabilgarri."
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:417
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:423
 msgid "Error converting file"
 msgstr "Errorea gertatu da fitxategia bihurtzean"
 
@@ -4501,7 +4482,7 @@ msgid ""
 "and iTunes with the same iPod is not recommended."
 msgstr ""
 "iPod horrekin erabili duzun iTunes bertsioak iPod-arentzat gorde duen "
-"kantuen datu-basearen bertsioa berriegia da Banshee-k ezagutzeko. \n"
+"abestien datu-basearen bertsioa berriegia da Banshee-k ezagutzeko. \n"
 "\n"
 "Banshee-k datu-basea berreraiki dezake, baina ezarpen batzuk eta gailuko "
 "eduki guztia gal daitezke (ziurtatu zaitez aurrenik datuen babeskopia "
@@ -4646,6 +4627,11 @@ msgstr "Amazon MP3 fitxategiak"
 msgid "Amazon MP3 Purchase"
 msgstr "Amazon MP3 erosketak"
 
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:81
+msgid "C_hoose Files"
+msgstr "_Aukeratu fitxategiak"
+
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSource.cs:42
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:39
 msgid "Amazon MP3 Store"
@@ -4750,8 +4736,9 @@ msgid "Book Title"
 msgstr "Liburuaren izenburua"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:68
-msgid "Audiobooks, etc"
-msgstr "Audio-liburuak, e.a."
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
+msgid "Audiobooks"
+msgstr "Audio-liburuak"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:75
 msgid "Search your audiobooks"
@@ -4777,7 +4764,7 @@ msgid "No Bookmark Set"
 msgstr "Ez da laster-markarik ezarri"
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:76
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:55
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:56
 msgid "Audio CD"
 msgstr "Audio CDa"
 
@@ -4852,7 +4839,7 @@ msgstr ""
 "(adibidez, urradurak), baina horrek nabarmen moteltzen du inportatzea."
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:320
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:441
 msgid "Import CD"
 msgstr "CDa inportatzea"
 
@@ -4868,46 +4855,46 @@ msgstr "Bikoiztu CDa"
 msgid "Duplicate this audio CD"
 msgstr "Bikoiztu Audio CD hau"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:130
-msgid "Searching for CD metadata..."
-msgstr "CDaren metadatuak bilatzen..."
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:131
+msgid "Searching for track information..."
+msgstr "Pistaren informazioa bilatzen..."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:163
-msgid "Could not fetch metadata for CD."
-msgstr "Ezin dira CDaren metadatuak eskuratu."
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:164
+msgid "Could not fetch track information"
+msgstr "Ezin izan da pistaren informazioa eskuratu."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:191
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:192
 msgid "Automatic import off since this album is already in the Music Library."
 msgstr ""
 "Inportazio automatikoa desaktibatu album hau jadanik musikaren liburutegian "
 "badago."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:214
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:215
 msgid "Could not import CD"
 msgstr "Ezin izan da CDa inportatu"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:231
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:232
 msgid "Could not duplicate audio CD"
 msgstr "Ezin izan da Audio CDa bikoiztu"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:363
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:364
 msgid "Ejecting audio CD..."
 msgstr "Audio CDa egozten..."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:381
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:382
 #, csharp-format
 msgid "Could not eject audio CD: {0}"
 msgstr "Ezin izan da Audio CDa egotzi: {0}"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:414
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
 msgid "Audio CD Preferences"
 msgstr "Audio CDaren hobespenak"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:416
 msgid "Eject Disc"
 msgstr "Egotzi diskoa"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:439
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
 #, csharp-format
 msgid "Import ‟{0}”"
 msgstr "Inportatu '{0}'"
@@ -4916,31 +4903,31 @@ msgstr "Inportatu '{0}'"
 msgid "Detecting BPM"
 msgstr "BPMak detektatzen"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:91
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:92
 msgid "D_etect"
 msgstr "_Detektatu"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:103
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:104
 msgid "T_ap"
 msgstr "_Markatu"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:111
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:112
 msgid "Have Banshee attempt to auto-detect the BPM of this song"
 msgstr "Bansheek abesti honen BPMa automatikoki detektatzen saiatuko da"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:113
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:114
 msgid "Play this song"
 msgstr "Erreproduzitu abesti hau"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:116
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:117
 msgid "Tap this button to the beat to set the BPM for this song manually"
 msgstr "Markatu erritmoa botoi honekin abestiaren BPMa eskuz ezartzeko."
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:147
 msgid "_Automatically detect BPM for all songs"
 msgstr "Detektatu _automatikoki abesti guztien BPMak"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:149
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
 msgid ""
 "Detect beats per minute (BPM) for all songs that don't already have a value "
 "set"
@@ -5119,15 +5106,15 @@ msgstr "Deskargak bertan behera uztea"
 msgid "Waiting for downloads to terminate..."
 msgstr "Deskargak amaitzeko zain..."
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:60
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:59
 msgid "Import eMusic Downloads to Library"
 msgstr "Inportatu eMusic-eko deskargak liburutegira"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:62
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:61
 msgid "eMusic Files"
 msgstr "eMusic-eko fitxategiak"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:78
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:77
 msgid "eMusic Tracks"
 msgstr "eMusic-eko pistak"
 
@@ -5137,7 +5124,7 @@ msgid "File System Queue"
 msgstr "Fitxategi-sistemaren ilara"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:72
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:93
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
 msgid "Clear"
 msgstr "Garbitu"
 
@@ -5146,7 +5133,7 @@ msgid "Remove all tracks from the file system queue"
 msgstr "Kendu pista guztiak fitxategi-sistemako ilaratik"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:79
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:102
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
 msgid "Clear on Quit"
 msgstr "Garbitu irtetzean"
 
@@ -5231,18 +5218,33 @@ msgstr ", {0}"
 msgid "Fix?"
 msgstr "Konpondu?"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:48
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:51
 msgid "View Item Details"
 msgstr "Ikusi elementuaren xehetasunak"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:57
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:60
 msgid "Open Webpage"
 msgstr "Ireki webgunea"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:76
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:79
 msgid "Visit Archive.org"
 msgstr "Bisitatu Archive.org"
 
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:83
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
+msgid "Subscribe"
+msgstr "Harpidetu"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:84
+msgid "Subscribe to this search as a podcast"
+msgstr "Harpidetu bilaketa honetara podcast gisa"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:88
+#, csharp-format
+msgid "Internet Archive: {0}"
+msgstr "Interneteko artxiboa: {0}"
+
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:78
 msgid "Close Item"
 msgstr "Itxi elementua"
@@ -5270,8 +5272,8 @@ msgstr "Errorea interneteko artxibotik elementuaren xehetasunak eskuratzean"
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:205
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:130
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:66
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:138
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:276
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:89
 msgid "Description"
 msgstr "Azalpena"
@@ -5487,10 +5489,6 @@ msgstr ""
 msgid "Visit the Internet Archive online at archive.org"
 msgstr "Bisitatu interneteko artxiboa: archive.org"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
-msgid "Audiobooks"
-msgstr "Audio-liburuak"
-
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:308
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:78
 msgid "Movies"
@@ -5546,7 +5544,7 @@ msgstr "Eskuratu gehiago"
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:128
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:61
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:98
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:137
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:135
 msgid "Creator"
 msgstr "Sortzailea"
 
@@ -5772,26 +5770,26 @@ msgstr "Bilatu zure irratiak"
 msgid "Edit Station"
 msgstr "Editatu estazioa"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:134
 msgid "Station"
 msgstr "Estazioa"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:157
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:155
 #, csharp-format
 msgid "{0} station"
 msgid_plural "{0} stations"
 msgstr[0] "irrati {0}"
 msgstr[1] "{0} irrati"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:243
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:241
 msgid "Please provide a valid station URI"
 msgstr "Eman estazioaren baliozko URIa"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:256
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:254
 msgid "Please provide a station genre"
 msgstr "Eman estazioaren generoa"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:264
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:262
 msgid "Please provide a station title"
 msgstr "Eman estazioaren titulua"
 
@@ -5858,11 +5856,11 @@ msgstr "Bisitatu Last.fm-ko zure profil-orria"
 #: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:135
 #: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:91
 msgid "_Enable Song Reporting"
-msgstr "_Gaitu kanten berri ematea"
+msgstr "_Gaitu abestien berri ematea"
 
 #: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:136
 msgid "Enable song reporting"
-msgstr "Gaitu kanten berri ematea"
+msgstr "Gaitu abestien berri ematea"
 
 #: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:66
 msgid "Connect"
@@ -6151,24 +6149,24 @@ msgstr "Huts egin du estazioa sintonizatzean. {0}"
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:357
 #, csharp-format
 msgid "Getting new songs for {0}."
-msgstr "Kanta berriak {0}(e)ndik lortzen."
+msgstr "Abesti berriak {0}(e)ndik lortzen."
 
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:364
 #, csharp-format
 msgid "No new songs available for {0}."
-msgstr "Ez dago {0}(r)en kanta berririk eskuragarri."
+msgstr "Ez dago {0}(r)en abesti berririk eskuragarri."
 
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:390
 #, csharp-format
 msgid "Failed to get new songs for {0}."
-msgstr "Huts egin du {0}(r)en kanta berriak lortzean."
+msgstr "Huts egin du {0}(r)en abesti berriak lortzean."
 
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:451
 #, csharp-format
 msgid "{0} song played"
 msgid_plural "{0} songs played"
-msgstr[0] "Kanta {0} erreproduzituta"
-msgstr[1] "{0} kanta erreproduzituta"
+msgstr[0] "Abesti {0} erreproduzituta"
+msgstr[1] "{0} abesti erreproduzituta"
 
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:583
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:84
@@ -6358,22 +6356,22 @@ msgstr ""
 "Sinplifikatu 'Orain erreproduzitzen' interfazea iturburuaren zerrenda eta "
 "bestelakoak ezkutatuz"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:144
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:143
 #, csharp-format
 msgid "Unable to import track: {0}"
 msgstr "Ezin da pista inportatu: {0}"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:178
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:177
 msgid "Importing from Amarok failed"
-msgstr "Huts egin du Amarik-etik inportatzean"
+msgstr "Huts egin du Amarok-etik inportatzean"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:189
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:188
 msgid "Amarok"
 msgstr "Amarok"
 
 #. TODO add Help button and dialog/tooltip
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:68
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:383
 msgid "iTunes Importer"
 msgstr "iTunes inportatzailea"
 
@@ -6390,24 +6388,24 @@ msgid "Import playlists"
 msgstr "Inportatu erreprodukzio-zerrendak"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:120
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
 #, csharp-format
 msgid "Locate your \"{0}\" file..."
 msgstr "Lokalizatu zure \"{0}\" fitxategia..."
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:138
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
 #, csharp-format
 msgid "Locate \"{0}\""
 msgstr "Lokalizatu \"{0}\""
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:167
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:389
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
 msgid "Locate iTunes Music Directory"
 msgstr "Lokalizatu iTunes musikaren direktorioa"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:196
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:391
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:390
 #, csharp-format
 msgid ""
 "The iTunes library refers to your music directory as \"{0}\" but Banshee was "
@@ -6417,13 +6415,13 @@ msgstr ""
 "baina Banshee ez da gai direktorio horren kokalekua ateratzeko. Lokalizatu "
 "ezazu."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:75
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:393
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:74
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:392
 msgid "iTunes Media Player"
 msgstr "iTunes multimedia-erreproduzitzailea"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:135
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:395
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:134
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:394
 msgid ""
 "Banshee is not familiar with this version of the iTunes library format. "
 "Importing may or may not work as expected, or at all. Would you like to "
@@ -6433,17 +6431,17 @@ msgstr ""
 "formatuarekin. Inportatzeak agian funtziona dezake, edo agian ez. Hala ere, "
 "inportatzen saiatzea nahi duzu?"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:440
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:236
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:397
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:439
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:235
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:396
 msgid "Unable to import song."
 msgstr "Ezin da abestia inportatu."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:370
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:369
 msgid "Rhythmbox Music Player"
 msgstr "Rhythmbox musika-erreproduzitzailea"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
 msgid "Import _playlists"
 msgstr "Inportatu _erreprodukzio-zerrenda"
 
@@ -6455,75 +6453,75 @@ msgstr "_Bete"
 msgid "f_rom"
 msgstr "_hemendik"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:51
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
 msgid "Add to Play Queue"
 msgstr "Gehitu erreprodukzio-ilarara"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:53
 msgid "Append selected songs to the play queue"
-msgstr "Erantsi hautatutako kantak erreprodukzio-ilarari"
+msgstr "Erantsi hautatutako abestiak erreprodukzio-ilarari"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:56
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
 msgid "Play After"
 msgstr "Erreproduzitu honen ondoren"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:58
 msgid "Add selected songs after the currently playing track, album, or artist"
 msgstr ""
 "Gehitu hautatutako abestiak uneko pista, album edo artista erreproduzitu "
 "ondoren"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:61
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
 msgid "Current Track"
 msgstr "Uneko pista"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:63
 msgid "Add selected songs to the play queue after the currently playing song"
 msgstr ""
 "Gehitu hautatutako abestiak erreprodukzio-ilarari uneko abestia "
 "erreproduzitu ondoren"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:66
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
 msgid "Current Album"
 msgstr "Uneko albuma"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:68
 msgid "Add selected songs to the play queue after the currently playing album"
 msgstr ""
 "Gehitu hautatutako abestiak erreprodukzio-ilarari uneko albuma erreproduzitu "
 "ondoren"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:71
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
 msgid "Current Artist"
 msgstr "Uneko artista"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:73
 msgid "Add selected songs to the play queue after the currently playing artist"
 msgstr ""
 "Gehitu hautatutako abestiak erreprodukzio-ilarari uneko artista "
 "erreproduzitu ondoren"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:80
 msgid "Refresh random tracks in the play queue"
 msgstr "Freskatu ausaz pistak erreprodukzio-ilaran"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:85
 msgid "Randomize the playback order of items in the play queue"
 msgstr "Nahastu ausaz elementuen erreprodukzioaren ordena erreprodukzio-ilaran"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:88
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
 msgid "Add More"
 msgstr "Gehitu gehiago"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:90
 msgid "Add more random tracks to the play queue"
 msgstr "Gehitu ausaz pista gehiago erreprodukzio-ilarari"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:95
 msgid "Remove all tracks from the play queue"
 msgstr "Kendu pista guztiak erreprodukzio-ilaratik"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:104
 msgid "Clear the play queue when quitting"
 msgstr "Garbitu erreprodukzio-ilara irtetzean"
 
@@ -6531,16 +6529,17 @@ msgstr "Garbitu erreprodukzio-ilara irtetzean"
 msgid "Remove From Play Queue"
 msgstr "Kendu erreprodukzio-ilaratik"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:949
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:959
 msgid "Number of _played songs to show"
 msgstr "_Erreproduzitutako abesti kopurua erakusteko"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:955
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:965
 msgid "Number of _upcoming songs to show"
 msgstr "_Erreproduzituko diren abesti kopurua erakusteko"
 
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastFeedModel.cs:47
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:275
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:89
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:86
 msgid "Podcast"
 msgstr "Podcast-a"
@@ -6550,58 +6549,58 @@ msgstr "Podcast-a"
 msgid "All Podcasts ({0})"
 msgstr "Podcast guztiak ({0})"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:99
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:104
 msgid "Podcasts Folder"
 msgstr "Podcast-en karpeta"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:126
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:131
 msgid "Remove Podcast"
 msgstr "Kendu podcast-a"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:131
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:136
 msgid "Disable Auto Updates"
 msgstr "Desgaitu eguneraketa automatikoak"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:149
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:154
 #, csharp-format
 msgid "Network error updating {0}"
 msgstr "Sareko errorea {0} eguneratzean"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:155
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:160
 #, csharp-format
 msgid "Parsing error updating {0}"
 msgstr "Analisiaren errorea {0} eguneratzean"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:158
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:163
 #, csharp-format
 msgid "Authentication error updating {0}"
 msgstr "Autentifikazioren errorea {0} eguneratzean"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:161
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:166
 #, csharp-format
 msgid "Error updating {0}"
 msgstr "Errorea {0} eguneratzean"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:217
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:222
 msgid "Search your podcasts"
 msgstr "Bilatu zure podcast-ak"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:275
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:88
 msgid "Published"
 msgstr "Argitaratua"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:275
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:66
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
 msgid "New"
 msgstr "Berria"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:276
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellDownloadStatus.cs:57
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:66
 msgid "Downloaded"
 msgstr "Deskargatuta"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:298
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:312
 #, csharp-format
 msgid "{0} episode"
 msgid_plural "{0} episodes"
@@ -6651,6 +6650,10 @@ msgstr "Podcast-ak deskargatzen"
 msgid "Cancel all podcast downloads?"
 msgstr "Utzi podcast-en deskarga guztiak?"
 
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/HeaderWidget.cs:99
+msgid "_Limit to episodes from"
+msgstr "_Mugatu pasarteetara hemendik"
+
 #. "<control><shift>U",
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:73
 msgid "Check all podcasts for new episodes"
@@ -6664,56 +6667,59 @@ msgstr "Gehitu podcast-a..."
 msgid "Subscribe to a new podcast"
 msgstr "Podcast berri bat harpidetzen du"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:90
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:93
 msgid "Unsubscribe and Delete"
 msgstr "Harpidetza kendu eta ezabatu"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:96
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:99
 msgid "Check for New Episodes"
 msgstr "Begiratu pasarte berriak"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:102
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:105
 msgid "Download All Episodes"
 msgstr "Deskargatu pasarte guztiak"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:108
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:111
 msgid "Visit Podcast Homepage"
 msgstr "Bisitatu Podcast-aren gune nagusia"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:120
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:123
 msgid "Mark as New"
 msgstr "Markatu berria gisa"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:126
-msgid "Mark as Old"
-msgstr "Markatu zaharra gisa"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:129
+msgid "Archive"
+msgstr "Artxiboa"
 
 #. Translators: this is a verb used as a button name, not a noun
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:132
-msgid "Download Podcast(s)"
-msgstr "Deskargatu Podcast-ak"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:135
+msgid "Download"
+msgstr "Deskargatu"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:138
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:141
 msgid "Cancel Download"
 msgstr "Utzi deskargak"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:144
-msgid "Remove Downloaded File(s)"
-msgstr "Kendu deskargatutako fitxategiak"
-
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:150
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:153
 msgid "Visit Website"
 msgstr "Bisitatu webgunea"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:162
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:165
 msgid "Add Podcast"
 msgstr "Gehitu podcast-a"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:326
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:262
+#, csharp-format
+msgid "Delete File"
+msgid_plural "Delete Files"
+msgstr[0] "Ezabatu fitxategia"
+msgstr[1] "Ezabatu fitxategiak"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:343
 msgid "Invalid URL"
 msgstr "URL baliogabea"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:327
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:344
 msgid "Podcast URL is invalid."
 msgstr "Podcast-aren URLa ez da baliozkoa."
 
@@ -6748,11 +6754,6 @@ msgstr "Ez dago azalpenik erabilgarri."
 msgid "Podcast:"
 msgstr "Podcast-a:"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
-msgid "Subscribe"
-msgstr "Harpidetu"
-
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:92
 msgid "Subscribe to New Podcast"
 msgstr "Harpidetu Podcast berria"
diff --git a/po/hu.po b/po/hu.po
index 938edbf..0e1bf8f 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -7,9 +7,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: banshee master\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=banshee&component=general\n"
-"POT-Creation-Date: 2010-09-28 06:36+0000\n"
-"PO-Revision-Date: 2010-09-28 12:54+0200\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-11-15 02:24+0100\n"
+"PO-Revision-Date: 2010-11-15 02:20+0100\n"
 "Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
 "Language-Team: Hungarian <gnome at fsf dot hu>\n"
 "MIME-Version: 1.0\n"
@@ -58,7 +58,8 @@ msgstr ""
 
 #. ../src/Backends/Banshee.Osx/Banshee.Osx.addin.xml
 #: ../data/addin-xml-strings.cs:26
-msgid "Backend providers for the OSX platform. Includes general OSX integration."
+msgid ""
+"Backend providers for the OSX platform. Includes general OSX integration."
 msgstr ""
 "Háttérprogram-szolgáltatók az OS X rendszerhez. Az általános OS X támogatást "
 "biztosítja."
@@ -203,7 +204,8 @@ msgstr "Boo parancsnyelv"
 
 #: ../data/addin-xml-strings.cs:91
 msgid "Customize and extend Banshee with Boo-language scripts."
-msgstr "A Banshee személyre szabása és kiterjesztése Boo nyelvű parancsfájlokkal."
+msgstr ""
+"A Banshee személyre szabása és kiterjesztése Boo nyelvű parancsfájlokkal."
 
 #: ../data/addin-xml-strings.cs:92 ../data/addin-xml-strings.cs:97
 #: ../data/addin-xml-strings.cs:102 ../data/addin-xml-strings.cs:107
@@ -276,7 +278,8 @@ msgstr "Internetarchívum"
 
 #: ../data/addin-xml-strings.cs:126
 msgid "Browse and search the Internet Archive's vast media collection."
-msgstr "Tallózás és keresés az internet archívumának hatalmas médiagyűjteményében."
+msgstr ""
+"Tallózás és keresés az internet archívumának hatalmas médiagyűjteményében."
 
 #. ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio.addin.xml
 #: ../data/addin-xml-strings.cs:130
@@ -405,14 +408,15 @@ msgstr "Lejátszási sor"
 
 #: ../data/addin-xml-strings.cs:189
 msgid "Queue tracks in an ad-hoc playlist, or let the Auto DJ take over."
-msgstr "Számok sorba állítása eseti lejátszólistába, vagy automata DJ használata."
+msgstr ""
+"Számok sorba állítása eseti lejátszólistába, vagy automata DJ használata."
 
 #. ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.addin.xml
 #: ../data/addin-xml-strings.cs:193
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:188
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:193
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/PodcastGroupSource.cs:38
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:107
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:203
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:212
 msgid "Podcasts"
 msgstr "Podcastek"
 
@@ -475,7 +479,8 @@ msgstr "Wikipédia"
 
 #: ../data/addin-xml-strings.cs:218
 msgid "View artist information from Wikipedia in the context pane."
-msgstr "Előadó-információk megjelenítése a Wikipédiából a környezet ablaktáblán."
+msgstr ""
+"Előadó-információk megjelenítése a Wikipédiából a környezet ablaktáblán."
 
 #: ../data/addin-xml-strings.cs:219 ../data/addin-xml-strings.cs:224
 msgid "Context Pane"
@@ -737,7 +742,7 @@ msgstr "Windows Media Audio"
 
 #: ../data/desktop-files/common.desktop.in.h:1
 #: ../src/Clients/Muinshee/Muinshee/PlayerInterface.cs:76
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:109
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:107
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:206
 #: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:60
 msgid "Banshee Media Player"
@@ -761,7 +766,6 @@ msgid "Could not create filesrc element"
 msgstr "A „filesrc” elem létrehozása nem sikerült"
 
 #: ../libbanshee/banshee-bpmdetector.c:214
-#| msgid "Could not create decodebin plugin"
 msgid "Could not create decodebin2 plugin"
 msgstr "A decodebin2 bővítmény létrehozása nem sikerült"
 
@@ -803,7 +807,6 @@ msgid "Could not create source element"
 msgstr "A forráselem létrehozása nem sikerült"
 
 #: ../libbanshee/banshee-transcoder.c:246
-#| msgid "Could not create 'decodebin' plugin"
 msgid "Could not create 'decodebin2' plugin"
 msgstr "A „decodebin2” bővítmény létrehozása nem sikerült"
 
@@ -839,11 +842,11 @@ msgstr "CD írása…"
 msgid "Write selected tracks to an audio CD"
 msgstr "Kiválasztott számok hang CD-re írása"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:104
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
 msgid "Could not write CD"
 msgstr "A CD írása nem sikerült"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:106
 msgid "Brasero could not be started"
 msgstr "A Brasero nem indítható"
 
@@ -864,7 +867,7 @@ msgid "Could not create BPM detection driver."
 msgstr "A BPM-felismerő meghajtó nem hozható létre."
 
 #: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:82
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:766
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:771
 msgid "Enable _gapless playback"
 msgstr "_Szünetmentes lejátszás bekapcsolása"
 
@@ -877,19 +880,19 @@ msgstr ""
 "koncepcióalbumok és klasszikus zene esetén."
 
 #: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:150
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:187
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:192
 msgid "Could not initialize GStreamer library"
 msgstr "A GStreamer könyvtár előkészítése nem sikerült"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:430
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:435
 msgid "Unknown Error"
 msgstr "Ismeretlen hiba"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:760
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:765
 msgid "_Enable ReplayGain correction"
 msgstr "_Visszhangerősítés javításának engedélyezése"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:761
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:766
 msgid ""
 "For tracks that have ReplayGain data, automatically scale (normalize) "
 "playback volume"
@@ -897,7 +900,7 @@ msgstr ""
 "A ReplayGain adatokat tartalmazó számok esetén a lejátszási hangerő "
 "automatikus normalizálása"
 
-#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:767
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:772
 msgid ""
 "Eliminate the small playback gap on track change.  Useful for concept albums "
 "and classical music."
@@ -919,65 +922,67 @@ msgid "_Close"
 msgstr "_Bezárás"
 
 #: ../src/Backends/Banshee.Osx/Banshee.OsxBackend/OsxService.cs:92
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:238
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:251
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:79
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:133
 msgid "Close"
 msgstr "Bezárás"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:148
+#: ../src/Clients/Booter/Booter/Entry.cs:152
 msgid "Help Options"
 msgstr "Súgólehetőségek"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:149
+#: ../src/Clients/Booter/Booter/Entry.cs:153
 msgid "Show this help"
 msgstr "Ezen súgó megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:150
+#: ../src/Clients/Booter/Booter/Entry.cs:154
 msgid "Show options for controlling playback"
 msgstr "A lejátszást vezérlő kapcsolók megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:151
+#: ../src/Clients/Booter/Booter/Entry.cs:155
 msgid "Show options for querying the playing track"
 msgstr "A lejátszott számot lekérdező kapcsolók megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:152
+#: ../src/Clients/Booter/Booter/Entry.cs:156
 msgid "Show options for querying the playing engine"
 msgstr "A lejátszóalrendszert lekérdező kapcsolók megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:153
+#: ../src/Clients/Booter/Booter/Entry.cs:157
 msgid "Show options for the user interface"
 msgstr "A felhasználói felület kapcsolóinak megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:154
+#: ../src/Clients/Booter/Booter/Entry.cs:158
 msgid "Show options for developers and debugging"
 msgstr "Fejlesztőknek szóló és hibakeresési kapcsolók megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:155
+#: ../src/Clients/Booter/Booter/Entry.cs:159
 msgid "Show all option groups"
 msgstr "Minden kapcsolócsoport megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:156
+#: ../src/Clients/Booter/Booter/Entry.cs:160
 msgid "Show version information"
 msgstr "Verzióinformációk megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:159
+#: ../src/Clients/Booter/Booter/Entry.cs:163
 msgid "Playback Control Options"
 msgstr "Lejátszást vezérlő kapcsolói"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:160
-msgid "Play the next track, optionally restarting if the 'restart' value is set"
+#: ../src/Clients/Booter/Booter/Entry.cs:164
+msgid ""
+"Play the next track, optionally restarting if the 'restart' value is set"
 msgstr ""
 "A következő szám lejátszása, újraindítással, ha az „újraindítás” érték be "
 "van állítva"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:161
-msgid "Play the previous track, optionally restarting if the 'restart value is set"
+#: ../src/Clients/Booter/Booter/Entry.cs:165
+msgid ""
+"Play the previous track, optionally restarting if the 'restart value is set"
 msgstr ""
 "Az előző szám lejátszása, újraindítással, ha az „újraindítás” érték be van "
 "állítva"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:162
+#: ../src/Clients/Booter/Booter/Entry.cs:166
 msgid ""
 "If the current song has been played longer than 4 seconds then restart it, "
 "otherwise the same as --previous"
@@ -985,27 +990,28 @@ msgstr ""
 "Ha a jelenlegi szám 4 másodpercnél tovább volt lejátszva, akkor újraindítja, "
 "egyébként ugyanaz mint a --previous"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:163
+#: ../src/Clients/Booter/Booter/Entry.cs:167
 msgid "Automatically start playing any tracks enqueued on the command line"
-msgstr "A parancssorban sorba állított számok lejátszásának automatikus elindítása"
+msgstr ""
+"A parancssorban sorba állított számok lejátszásának automatikus elindítása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:164
+#: ../src/Clients/Booter/Booter/Entry.cs:168
 msgid "Start playback"
 msgstr "Lejátszás indítása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:165
+#: ../src/Clients/Booter/Booter/Entry.cs:169
 msgid "Pause playback"
 msgstr "Lejátszás szüneteltetése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:166
+#: ../src/Clients/Booter/Booter/Entry.cs:170
 msgid "Toggle playback"
 msgstr "Lejátszás átváltása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:167
+#: ../src/Clients/Booter/Booter/Entry.cs:171
 msgid "Completely stop playback"
 msgstr "Lejátszás leállítása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:169
+#: ../src/Clients/Booter/Booter/Entry.cs:173
 msgid ""
 "Enable or disable playback stopping after the currently playing track (value "
 "should be either 'true' or 'false')"
@@ -1013,100 +1019,100 @@ msgstr ""
 "Lejátszás leállításának engedélyezése vagy tiltása a lejátszott szám után "
 "(true vagy false értékű lehet)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:170
+#: ../src/Clients/Booter/Booter/Entry.cs:174
 msgid "Set the playback volume (0-100), prefix with +/- for relative values"
 msgstr ""
 "Lejátszás hangerejének beállítása (0-100), relatív értékek +/- előtaggal "
 "jelölhetők"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:171
+#: ../src/Clients/Booter/Booter/Entry.cs:175
 msgid "Seek to a specific point (seconds, float)"
 msgstr "Adott helyre tekerés (másodperc, lebegőpontos)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:172
+#: ../src/Clients/Booter/Booter/Entry.cs:176
 msgid "Set the currently played track's rating (0 to 5)"
 msgstr "A jelenleg lejátszott szám értékelésének beállítása (0 - 5)"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:175
+#: ../src/Clients/Booter/Booter/Entry.cs:179
 msgid "Player Engine Query Options"
 msgstr "Lejátszómotor lekérdezési kapcsolói"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:176
+#: ../src/Clients/Booter/Booter/Entry.cs:180
 msgid "Current player state"
 msgstr "Jelenlegi lejátszóállapot"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:177
+#: ../src/Clients/Booter/Booter/Entry.cs:181
 msgid "Last player state"
 msgstr "Utolsó lejátszóállapot"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:178
+#: ../src/Clients/Booter/Booter/Entry.cs:182
 msgid "Query whether the player can be paused"
 msgstr "A lejátszó szüneteltetési képességének lekérdezése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:179
+#: ../src/Clients/Booter/Booter/Entry.cs:183
 msgid "Query whether the player can seek"
 msgstr "A lejátszó tekerési képességének lekérdezése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:180
+#: ../src/Clients/Booter/Booter/Entry.cs:184
 msgid "Player volume"
 msgstr "Lejátszó hangereje"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:181
+#: ../src/Clients/Booter/Booter/Entry.cs:185
 msgid "Player position in currently playing track"
 msgstr "Lejátszópozíció az épp lejátszott számban"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:184
+#: ../src/Clients/Booter/Booter/Entry.cs:188
 msgid "Playing Track Metadata Query Options"
 msgstr "Lejátszott szám metaadat-lekérdezési kapcsolói"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:185
+#: ../src/Clients/Booter/Booter/Entry.cs:189
 msgid "URI"
 msgstr "URI"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:186
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:161
+#: ../src/Clients/Booter/Booter/Entry.cs:190
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:138
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:89
 msgid "Artist Name"
 msgstr "Előadó neve"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:187
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:163
+#: ../src/Clients/Booter/Booter/Entry.cs:191
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:140
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:90
 msgid "Album Title"
 msgstr "Album címe"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:188
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:160
+#: ../src/Clients/Booter/Booter/Entry.cs:192
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:137
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:88
 msgid "Track Title"
 msgstr "Szám címe"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:189
+#: ../src/Clients/Booter/Booter/Entry.cs:193
 msgid "Duration"
 msgstr "Hossz"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:190
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:117
+#: ../src/Clients/Booter/Booter/Entry.cs:194
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:116
 msgid "Track Number"
 msgstr "Szám sorszáma"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:191
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:126
+#: ../src/Clients/Booter/Booter/Entry.cs:195
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:125
 msgid "Track Count"
 msgstr "Számok összesen"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:192
+#: ../src/Clients/Booter/Booter/Entry.cs:196
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:149
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:114
 msgid "Disc Number"
 msgstr "Lemezszám"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:193
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:165
+#: ../src/Clients/Booter/Booter/Entry.cs:197
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:142
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:113
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:177
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:176
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:78
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:132
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:77
@@ -1114,86 +1120,86 @@ msgstr "Lemezszám"
 msgid "Year"
 msgstr "Év"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:194
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:230
+#: ../src/Clients/Booter/Booter/Entry.cs:198
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:229
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:131
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:60
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:96
 msgid "Rating"
 msgstr "Értékelés"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:195
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:322
+#: ../src/Clients/Booter/Booter/Entry.cs:199
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:321
 msgid "Score"
 msgstr "Pontszám"
 
 #. Translators: noun
-#: ../src/Clients/Booter/Booter/Entry.cs:196
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:143
+#: ../src/Clients/Booter/Booter/Entry.cs:200
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:142
 msgid "Bit Rate"
 msgstr "Bitsebesség"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:199
+#: ../src/Clients/Booter/Booter/Entry.cs:203
 msgid "User Interface Options"
 msgstr "Felhasználói felület kapcsolói"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:200
+#: ../src/Clients/Booter/Booter/Entry.cs:204
 msgid "Present the user interface on the active workspace"
 msgstr "A felhasználói felület megjelenítése az aktív munkaterületen"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:201
+#: ../src/Clients/Booter/Booter/Entry.cs:205
 msgid "Enter the full-screen mode"
 msgstr "Teljes képernyős mód"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:202
+#: ../src/Clients/Booter/Booter/Entry.cs:206
 msgid "Hide the user interface"
 msgstr "Felhasználói felület elrejtése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:203
+#: ../src/Clients/Booter/Booter/Entry.cs:207
 msgid "Do not present the user interface, regardless of any other options"
 msgstr "Ne jelenjen meg a felhasználói felület, más kapcsolóktól függetlenül"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:204
+#: ../src/Clients/Booter/Booter/Entry.cs:208
 msgid "Present the import media dialog box"
 msgstr "A média importálása ablak megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:205
+#: ../src/Clients/Booter/Booter/Entry.cs:209
 msgid "Present the about dialog"
 msgstr "A névjegyablak megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:206
+#: ../src/Clients/Booter/Booter/Entry.cs:210
 msgid "Present the open location dialog"
 msgstr "A hely megnyitása ablak megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:207
+#: ../src/Clients/Booter/Booter/Entry.cs:211
 msgid "Present the preferences dialog"
 msgstr "A beállítások ablak megjelenítése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:210
+#: ../src/Clients/Booter/Booter/Entry.cs:214
 msgid "Debugging and Development Options"
 msgstr "Hibakeresési és fejlesztői kapcsolók"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:211
+#: ../src/Clients/Booter/Booter/Entry.cs:215
 msgid "Enable general debugging features"
 msgstr "Általános hibakeresési szolgáltatások engedélyezése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:212
+#: ../src/Clients/Booter/Booter/Entry.cs:216
 msgid "Enable debugging output of SQL queries"
 msgstr "SQL lekérdezések hibakeresési kimenetének engedélyezése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:213
+#: ../src/Clients/Booter/Booter/Entry.cs:217
 msgid "Enable debugging output of Mono.Addins"
 msgstr "A Mono.Addins hibakeresési kimenetének engedélyezése"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:214
+#: ../src/Clients/Booter/Booter/Entry.cs:218
 msgid "Specify an alternate database to use"
 msgstr "Használandó alternatív adatbázis megadása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:215
+#: ../src/Clients/Booter/Booter/Entry.cs:219
 msgid "Specify an alternate key, default is /apps/banshee-1/"
 msgstr "Alternatív kulcs megadása, az alapértelmezett az /apps/banshee-1/"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:216
+#: ../src/Clients/Booter/Booter/Entry.cs:220
 msgid ""
 "Optimize instance for running uninstalled; most notably, this will create an "
 "alternate Mono.Addins database in the working directory"
@@ -1201,16 +1207,16 @@ msgstr ""
 "Példány optimalizálása telepítés nélküli futásra, ez legfőképp egy másik "
 "Mono.Addins adatbázis hoz létre a munkakönyvtárban"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:218
+#: ../src/Clients/Booter/Booter/Entry.cs:222
 msgid "Disable DBus support completely"
 msgstr "D-Bus támogatás teljes letiltása"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:220
+#: ../src/Clients/Booter/Booter/Entry.cs:224
 #, csharp-format
 msgid "Skip loading a custom gtkrc file ({0}) if it exists"
 msgstr "Egyéni gtkrc fájl ({0}) betöltésének kihagyása, ha van"
 
-#: ../src/Clients/Booter/Booter/Entry.cs:251
+#: ../src/Clients/Booter/Booter/Entry.cs:255
 #, csharp-format
 msgid "The following help arguments are invalid: {0}"
 msgstr "A következő súgóargumentumok érvénytelenek: {0}"
@@ -1226,7 +1232,7 @@ msgstr "S_orba állítás"
 #: ../src/Clients/Muinshee/Muinshee/BaseDialog.cs:86
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:196
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:86
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:126
 msgid "_Play"
 msgstr "_Lejátszás"
 
@@ -1256,34 +1262,34 @@ msgid "Play Song"
 msgstr "Szám lejátszása"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:447
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:465
 msgid "Search"
 msgstr "Keresés"
 
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:159
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:136
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:87
 msgid "Artist, Album, or Title"
 msgstr "Előadó, album vagy cím"
 
 #. Alias for %album_artist%
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:162
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:139
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:72
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:78
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:82
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:81
 msgid "Album Artist"
 msgstr "Album előadója"
 
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:164
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:141
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:98
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:185
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:364
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:184
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:363
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:91
 msgid "Genre"
 msgstr "Műfaj"
 
 #. Translators: noun
-#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:166
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:214
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:143
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:213
 msgid "Comment"
 msgstr "Megjegyzés"
 
@@ -1306,88 +1312,88 @@ msgstr "Ismeretlen album"
 msgid "Unknown Title"
 msgstr "Ismeretlen cím"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:186
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:191
 #: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:91
 msgid "Various Artists"
 msgstr "Vegyes előadók"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:342
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
 msgid "Stream location not found"
 msgstr "Az adatfolyam helye nem található"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:342
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:324
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:328
 msgid "File not found"
 msgstr "A fájl nem található"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:344
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:349
 msgid "Codec for playing this media type not available"
 msgstr "Nem érhető el a médiatípus lejátszásához szükséges kodek"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:346
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:351
 msgid "File protected by Digital Rights Management (DRM)"
 msgstr "A fájlt digitális jogkezelés (DRM) védi"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:348
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:353
 msgid "Unknown error"
 msgstr "Ismeretlen hiba"
 
 #. TODO turn this into a PrimarySource-owned delegate?
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:417
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:422
 msgid "_Restart Podcast"
 msgstr "_Podcast újraindítása"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:418
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:423
 msgid "_Restart Audiobook"
 msgstr "_Hangoskönyv újraindítása"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:419
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:424
 msgid "_Restart Video"
 msgstr "_Videó újraindítása"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:420
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:425
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:86
 msgid "_Restart Song"
 msgstr "S_zám újraindítása"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:421
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:426
 msgid "_Restart Item"
 msgstr "Elem új_raindítása"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:437
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:442
 msgid "_Jump to Playing Podcast"
 msgstr "Ugrás a lejátszott p_odcastra"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:438
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:443
 msgid "_Jump to Playing Audiobook"
 msgstr "Ugrás a lejátszott _hangoskönyvre"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:439
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:444
 msgid "_Jump to Playing Video"
 msgstr "Ugrás a lejátszott vi_deóra"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:440
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:445
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:82
 msgid "_Jump to Playing Song"
 msgstr "_Ugrás a lejátszott számra"
 
-#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:441
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:446
 msgid "_Jump to Playing Item"
 msgstr "Ugrás a lejátszott _elemre"
 
 #. Translators: This is used to generate bookmark names. {0} is track title, {1} is minutes
 #. (possibly more than two digits) and {2} is seconds (between 00 and 60).
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:173
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:172
 #, csharp-format
 msgid "{0} ({1}:{2:00})"
 msgstr "{0} ({1}:{2:00})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:70
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:69
 #, csharp-format
 msgid "All Albums ({0})"
 msgstr "Minden album ({0})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:69
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:68
 #, csharp-format
 msgid "All Artists ({0})"
 msgstr "Minden előadó ({0})"
@@ -1397,15 +1403,15 @@ msgstr "Minden előadó ({0})"
 msgid "Value"
 msgstr "Érték"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:49
 msgid "Shuffle by A_lbum"
 msgstr "Véletlen sorrend _album szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
 msgid "by album"
 msgstr "album szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:52
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
 msgid "Play all songs from an album, then randomly choose another album"
 msgstr "Egy album összes számának lejátszása, majd másik album választása"
 
@@ -1421,27 +1427,27 @@ msgstr "előadó szerint"
 msgid "Play all songs by an artist, then randomly choose another artist"
 msgstr "Egy előadó összes számának lejátszása, majd másik előadó választása"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:36
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
 msgid "Shuffle _Off"
 msgstr "_Véletlen sorrend ki"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:37
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:39
 msgid "manually"
 msgstr "saját kezűleg"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:40
 msgid "Do not shuffle playlist"
 msgstr "Ne véletlenszerűsítse a lejátszólistát"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:45
 msgid "Shuffle by _Rating"
 msgstr "Véletlen sorrend é_rtékelés szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
 msgid "by rating"
 msgstr "értékelés szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
 msgid "Play songs randomly, prefer higher rated songs"
 msgstr ""
 "A számok véletlen sorrendű lejátszása, magasabb értékelésűek előnyben "
@@ -1461,62 +1467,63 @@ msgstr ""
 "A számok véletlen sorrendű lejátszása, magasabb pontszámúak előnyben "
 "részesítése"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:46
 msgid "Shuffle by _Song"
 msgstr "Véletlen sorrend szá_m szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
 msgid "by song"
 msgstr "szám szerint"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:49
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
 msgid "Play songs randomly from the playlist"
 msgstr "A számok véletlen sorrendű lejátszása a lejátszólistáról"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:132
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:138
 msgid "Scanning for media"
 msgstr "Adathordozó elemzése"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:182
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1382
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:188
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1384
 msgid "Scanning..."
 msgstr "Vizsgálat…"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:198
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:204
 #, csharp-format
 msgid "Scanning ({0} files)..."
 msgstr "Vizsgálat ({0} fájl)…"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:232
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:238
 msgid "Importing Media"
 msgstr "Adathordozó importálása"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:239
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:245
 #: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:119
 msgid "The import process is currently running. Would you like to stop it?"
 msgstr "Az importálási folyamat jelenleg fut. Meg szeretné állítani?"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:245
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:251
 #: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:81
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:185
 #, csharp-format
 msgid "Importing {0} of {1}"
 msgstr "{1}/{0}. importálása"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:78
 #, csharp-format
 msgid "Rescanning {0} of {1}"
 msgstr "{1}/{0}. ismételt vizsgálata"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:234
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:232
 msgid "Upgrading your Banshee Database"
 msgstr "A Banshee adatbázis frissítése"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:235
-msgid "Please wait while your old Banshee database is migrated to the new format."
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:233
+msgid ""
+"Please wait while your old Banshee database is migrated to the new format."
 msgstr "Várjon a régi Banshee adatbázis új formátumúra alakításáig."
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1379
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1381
 msgid "Refreshing Metadata"
 msgstr "Metaadatok frissítése"
 
@@ -1588,16 +1595,12 @@ msgstr "Lágy rock"
 msgid "Techno"
 msgstr "Techno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs:48
-msgid "Home Folder"
-msgstr "Saját mappa"
-
 #: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:58
 msgid "Remove From Library"
 msgstr "Eltávolítás a gyűjteményből"
 
 #. Translators: {0} is the library name, eg 'Music Library' or 'Podcasts'
-#: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:65
+#: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:122
 #, csharp-format
 msgid "{0} Folder"
 msgstr "{0} mappa"
@@ -1611,18 +1614,18 @@ msgid "Album Artist Initial"
 msgstr "Album előadójának monogramja"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:88
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:199
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:198
 msgid "Conductor"
 msgstr "Vezényel"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:93
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:192
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:191
 msgid "Composer"
 msgstr "Zeneszerző"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:103
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:92
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:360
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:91
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:359
 msgid "Album"
 msgstr "Album"
 
@@ -1655,13 +1658,13 @@ msgid "Number (unsorted)"
 msgstr "Szám (rendezetlen)"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:143
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:108
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:107
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:108
 msgid "Disc Count"
 msgstr "Lemezek száma"
 
 #: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:155
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:206
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:205
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:120
 msgid "Grouping"
 msgstr "Csoportosítás"
@@ -1693,77 +1696,81 @@ msgid_plural "{0} songs"
 msgstr[0] "{0} szám"
 msgstr[1] "{0} szám"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:114
-#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:91
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:113
+msgid "Music Folder"
+msgstr "Zenemappa"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:118
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:95
 msgid "Favorites"
 msgstr "Kedvencek"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:115
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
 msgid "Songs rated four and five stars"
 msgstr "Négy és öt csillagra értékelt számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:123
 msgid "Recent Favorites"
 msgstr "Legutóbbi kedvencek"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:120
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
 msgid "Songs listened to often in the past week"
 msgstr "A múlt héten gyakran hallgatott számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:128
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:95
 msgid "Recently Added"
 msgstr "Legutóbb hozzáadott"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:125
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
 msgid "Songs imported within the last week"
 msgstr "Az elmúlt héten importált számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:133
 msgid "Unheard"
 msgstr "Nem hallgatott"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:130
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
 msgid "Songs that have not been played or skipped"
 msgstr "Le nem játszott vagy kihagyott számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:137
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:141
 msgid "Neglected Favorites"
 msgstr "Mellőzött kedvencek"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:138
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:142
 msgid "Favorites not played in over two months"
 msgstr "Több mint két hónapja le nem játszott kedvencek"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:142
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:146
 msgid "Least Favorite"
 msgstr "Legkevésbé kedvelt"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:143
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
 msgid "Songs rated one or two stars or that you have frequently skipped"
 msgstr "Egy vagy két csillagra értékelt, vagy gyakran kihagyott számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:151
 msgid "700 MB of Favorites"
 msgstr "700 MB kedvenc"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:148
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
 msgid "A data CD worth of favorite songs"
 msgstr "Egy adat CD-nyi kedvenc szám"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:153
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
 msgid "80 Minutes of Favorites"
 msgstr "80 percnyi kedvenc"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:154
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
 msgid "An audio CD worth of favorite songs"
 msgstr "Egy hang CD-nyi kedvenc szám"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:159
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
 msgid "Unrated"
 msgstr "Nem értékelt"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:160
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
 msgid "Songs that haven't been rated"
 msgstr "Még nem értékelt számok"
 
@@ -1797,15 +1804,19 @@ msgid_plural "{0} videos"
 msgstr[0] "{0} videó"
 msgstr[1] "{0} videó"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:92
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:90
+msgid "Videos Folder"
+msgstr "Videók mappa"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:96
 msgid "Videos rated four and five stars"
 msgstr "Négy és öt csillagra értékelt videók"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:96
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:100
 msgid "Unwatched"
 msgstr "Nem nézett"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:97
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:101
 msgid "Videos that haven't been played yet"
 msgstr "Még le nem játszott videók"
 
@@ -1838,7 +1849,8 @@ msgstr "Előkészítés"
 msgid ""
 "Files are currently being converted to another format. Would you like to "
 "stop this?"
-msgstr "Még folyamatban van fájlok átalakítása más formátumra. Le szeretné állítani?"
+msgstr ""
+"Még folyamatban van fájlok átalakítása más formátumra. Le szeretné állítani?"
 
 #: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataJob.cs:52
 msgid "Saving Metadata to File"
@@ -1861,7 +1873,8 @@ msgstr "É_rtékelések és lejátszásszámok kiírása a fájlokba"
 msgid ""
 "Enable this option to save rating and playcount metadata inside supported "
 "audio files"
-msgstr "Értékelés és lejátszások száma metaadatok mentése a támogatott hangfájlokba"
+msgstr ""
+"Értékelés és lejátszások száma metaadatok mentése a támogatott hangfájlokba"
 
 #: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:60
 msgid "_Update file and folder names"
@@ -1888,9 +1901,10 @@ msgid "Import play _counts"
 msgstr "_Lejátszásszámok importálása"
 
 #. disabled by default
-#: ../src/Core/Banshee.Services/Banshee.Metrics/BansheeMetrics.cs:302
+#: ../src/Core/Banshee.Services/Banshee.Metrics/BansheeMetrics.cs:312
 msgid "Improve Banshee by sending anonymous usage data"
-msgstr "Segítsen a Banshee fejlesztésében névtelen felhasználási adatok küldésével"
+msgstr ""
+"Segítsen a Banshee fejlesztésében névtelen felhasználási adatok küldésével"
 
 #: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:52
 msgid "There is no available network connection"
@@ -1916,35 +1930,35 @@ msgstr ""
 "Egyes szolgáltatások széles sávú internet-hozzáférést igényelnek, mint "
 "például a last.fm vagy az albumborító letöltése"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:160
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:159
 msgid "Search this playlist"
 msgstr "Keresés a lejátszólistán"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:229
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:228
 msgid "The track's rating was set differently on the device and in Banshee"
 msgstr "A szám értékelése eltérő az eszközön és a Banshee-ban"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:59
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:309
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:58
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:308
 msgid "Playlist"
 msgstr "Lejátszólista"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:133
 msgid "Remove From Playlist"
 msgstr "Eltávolítás a lejátszólistáról"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:135
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
 msgid "Delete Playlist"
 msgstr "Lejátszólista törlése"
 
 #. TODO generate name based on the track selection, or begin editing it
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:386
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:392
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:385
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:391
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:176
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:95
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:394
-#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:500
-#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView_DragAndDrop.cs:213
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:135
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:452
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:542
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView_DragAndDrop.cs:214
 msgid "New Playlist"
 msgstr "Új lejátszólista"
 
@@ -1990,237 +2004,237 @@ msgstr "Fájlirányelvek"
 msgid "Co_py files to media folders when importing"
 msgstr "_Fájlok másolása a médiamappákba importáláskor"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:63
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:62
 msgid "items"
 msgstr "elem"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:64
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:63
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:60
 msgid "minutes"
 msgstr "perc"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:65
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:64
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:61
 msgid "hours"
 msgstr "óra"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:66
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:65
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:63
 msgid "MB"
 msgstr "MB"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:67
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:66
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:64
 msgid "GB"
 msgstr "GB"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:74
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:361
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:73
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:360
 msgid "Artist"
 msgstr "Előadó"
 
 #. Translators: These are unique search aliases for "artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:75
 msgid "artist"
 msgstr "előadó"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:75
 msgid "by"
 msgstr "előadó:"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:75
 msgid "artists"
 msgstr "előadó"
 
 #. Translators: These are unique search aliases for "album artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:84
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:83
 msgid "albumartist"
 msgstr "albumelőadó"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:84
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:83
 msgid "compilationartist"
 msgstr "válogatáselőadója"
 
 #. Translators: These are unique search aliases for "album". You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:93
 msgid "album"
 msgstr "album"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:93
 msgid "on"
 msgstr "ezen:"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:93
 msgid "from"
 msgstr "album:"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:100
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:99
 msgid "Disc"
 msgstr "Lemez"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:101
 msgid "disc"
 msgstr "lemez"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:101
 msgid "cd"
 msgstr "cd"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:101
 msgid "discnum"
 msgstr "lemezszám"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:110
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:109
 msgid "discs"
 msgstr "lemezek"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:110
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:109
 msgid "cds"
 msgstr "cdk"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:118
 msgid "track"
 msgstr "szám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:118
 msgid "trackno"
 msgstr "darabszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:118
 msgid "tracknum"
 msgstr "sorszám"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:128
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:127
 msgid "tracks"
 msgstr "számok"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:128
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:127
 msgid "trackcount"
 msgstr "számmennyiség"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:133
 msgid "Beats per Minute"
 msgstr "Percenkénti ütem"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:136
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:135
 msgid "bpm"
 msgstr "bpm"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:144
 msgid "bitrate"
 msgstr "bitsebesség"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:144
 msgid "kbs"
 msgstr "kbs"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:144
 msgid "kps"
 msgstr "kps"
 
 #. Translators: noun
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:152
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:151
 msgid "Sample Rate"
 msgstr "Mintavételezési gyakoriság"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:154
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:153
 msgid "samplerate"
 msgstr "mintavételezésigyakoriság"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:154
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:153
 msgid "Hz"
 msgstr "Hz"
 
 #. Translators: noun
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:161
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:160
 msgid "Bits Per Sample"
 msgstr "Bitek száma mintánként"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:162
 msgid "bitspersample"
 msgstr "bitekszámamintánként"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:162
 msgid "bitdepth"
 msgstr "bitmélység"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:162
 msgid "quantization"
 msgstr "kvantálás"
 
 #. Translators: noun
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:169
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:363
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:168
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:362
 #: ../src/Core/Banshee.Services/Banshee.Sources/Source.cs:666
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:89
 msgid "Name"
 msgstr "Név"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:170
 msgid "title"
 msgstr "című"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:170
 msgid "titled"
 msgstr "címe"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:170
 msgid "name"
 msgstr "név"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:170
 msgid "named"
 msgstr "neve"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:178
 msgid "year"
 msgstr "év"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:178
 msgid "released"
 msgstr "kiadva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:178
 msgid "yr"
 msgstr "év"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:187
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:186
 msgid "genre"
 msgstr "műfaj"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:194
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:193
 msgid "composer"
 msgstr "zeneszerző"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:201
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:200
 msgid "conductor"
 msgstr "vezényel"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:208
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:207
 msgid "grouping"
 msgstr "csoportosítás"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:216
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:215
 msgid "comment"
 msgstr "megjegyzés"
 
 #. Translators: noun
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:222
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:221
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:135
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:71
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:72
@@ -2228,262 +2242,262 @@ msgid "License"
 msgstr "Licenc"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:223
 msgid "license"
 msgstr "licenc"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:223
 msgid "licensed"
 msgstr "licencelve"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:223
 msgid "under"
 msgstr "ez_alatt"
 
 #. , typeof(NullQueryValue)},
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:232
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:231
 msgid "rating"
 msgstr "értékelés"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:232
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:231
 msgid "stars"
 msgstr "csillag"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:238
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:237
 msgid "Play Count"
 msgstr "Lejátszások száma"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:239
 msgid "plays"
 msgstr "lejátszás"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:239
 msgid "playcount"
 msgstr "lejátszásszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:239
 msgid "listens"
 msgstr "hallgatások"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:246
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:245
 msgid "Skip Count"
 msgstr "Kihagyások száma"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:248
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:247
 msgid "skips"
 msgstr "kihagyások"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:248
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:247
 msgid "skipcount"
 msgstr "kihagyásszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:254
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:253
 msgid "File Size"
 msgstr "Fájlméret"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:256
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:255
 msgid "size"
 msgstr "méret"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:256
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:255
 msgid "filesize"
 msgstr "fájlméret"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:262
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:261
 msgid "File Location"
 msgstr "Fájlhely"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:263
 msgid "uri"
 msgstr "uri"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:263
 msgid "path"
 msgstr "útvonal"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:263
 msgid "file"
 msgstr "fájl"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:263
 msgid "location"
 msgstr "hely"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:270
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:269
 msgid "Time"
 msgstr "Idő"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:271
 msgid "duration"
 msgstr "időtartam"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:271
 msgid "length"
 msgstr "hossz"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:271
 msgid "time"
 msgstr "idő"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:278
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:277
 msgid "Mime Type"
 msgstr "MIME-típus"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:279
 msgid "type"
 msgstr "típus"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:279
 msgid "mimetype"
 msgstr "mimetípus"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:279
 msgid "format"
 msgstr "formátum"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:279
 msgid "ext"
 msgstr "kit."
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:286
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:285
 msgid "Last Played"
 msgstr "Utoljára játszva"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:287
 msgid "lastplayed"
 msgstr "utolsólejátszás"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:287
 msgid "played"
 msgstr "lejátszva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:287
 msgid "playedon"
 msgstr "lejátszva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:294
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:293
 msgid "Last Skipped"
 msgstr "Utoljára kihagyott"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:295
 msgid "lastskipped"
 msgstr "utoljárakihagyott"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:295
 msgid "skipped"
 msgstr "kihagyva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:295
 msgid "skippedon"
 msgstr "kihagyvaekkor"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:302
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:301
 msgid "Date Added"
 msgstr "Hozzáadás dátuma"
 
 #. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:303
 msgid "added"
 msgstr "hozzáadva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:303
 msgid "imported"
 msgstr "importálva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:303
 msgid "addedon"
 msgstr "hozzáadva"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:303
 msgid "dateadded"
 msgstr "hozzáadásdátuma"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:303
 msgid "importedon"
 msgstr "importálásdátuma"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:315
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:314
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:65
 msgid "Smart Playlist"
 msgstr "Okos lejátszólista"
 
 #. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:324
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:323
 msgid "score"
 msgstr "pontszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:330
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:329
 msgid "Playback Error"
 msgstr "Lejátszási hiba"
 
 #. Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:332
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:331
 msgid "playbackerror"
 msgstr "lejátszásihiba"
 
 #. Translators: noun
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:349
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:348
 msgid "BPM"
 msgstr "BPM"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:350
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:349
 msgid "Skips"
 msgstr "Kihagyások"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:351
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:350
 msgid "Plays"
 msgstr "Lejátszások"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:356
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:355
 msgid "Random"
 msgstr "Véletlen"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:366
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:365
 msgid "Highest Rating"
 msgstr "Legjobb értékelés"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:367
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:366
 msgid "Lowest Rating"
 msgstr "Legrosszabb értékelés"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:369
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:368
 msgid "Highest Score"
 msgstr "Legmagasabb pontszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:370
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:369
 msgid "Lowest Score"
 msgstr "Legkisebb pontszám"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:372
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:371
 msgid "Most Often Played"
 msgstr "Leggyakrabban játszott"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:373
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:372
 msgid "Least Often Played"
 msgstr "Legritkábban játszott"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:375
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:374
 msgid "Most Recently Played"
 msgstr "Legutóbb játszott"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:376
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:375
 msgid "Least Recently Played"
 msgstr "Legrégebben játszott"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:378
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:377
 msgid "Most Recently Added"
 msgstr "Legutóbb felvéve"
 
-#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:379
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:378
 msgid "Least Recently Added"
 msgstr "Legrégebben felvéve"
 
@@ -2546,7 +2560,7 @@ msgstr "drm"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:208
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:210
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:212
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:383
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:389
 msgid "Unknown"
 msgstr "Ismeretlen"
 
@@ -2554,21 +2568,21 @@ msgstr "Ismeretlen"
 msgid "unknown"
 msgstr "ismeretlen"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:78
 msgid "Unable to Migrate Smart Playlists"
 msgstr "Nem lehet átállítani az okos lejátszólistákat"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:80
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
 #, csharp-format
 msgid "Please file a bug with this error: {0}"
 msgstr "Küldjön egy hibajelentést ezzel a hibával: {0}"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:67
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:49
 msgid "Edit Smart Playlist"
 msgstr "Okos lejátszólista szerkesztése"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:242
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:241
 msgid "Delete Smart Playlist"
 msgstr "Okos lejátszólista törlése"
 
@@ -2618,7 +2632,7 @@ msgid "Close Error Report"
 msgstr "Hibajelentés bezárása"
 
 #: ../src/Core/Banshee.Services/Banshee.Sources/ErrorSource.cs:83
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:226
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:224
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ErrorListDialog.cs:46
 msgid "Error"
 msgstr "Hiba"
@@ -2654,12 +2668,12 @@ msgstr "Mappahie_rarchia"
 msgid "File _name"
 msgstr "Fájl_név"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:693
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:669
 #, csharp-format
 msgid "Adding {0} of {1} to {2}"
 msgstr "{1}/{0} hozzáadása ehhez: {2}"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:712
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:688
 #, csharp-format
 msgid "Deleting {0} of {1} From {2}"
 msgstr "{1}/{0}. eltávolítása ebből: {2}"
@@ -2679,6 +2693,18 @@ msgid_plural "{0} items"
 msgstr[0] "{0} elem"
 msgstr[1] "{0} elem"
 
+#. TODO should add library sources here, but requires changing quite a few
+#. things that depend on being loaded before the music library is added.
+#. AddSource (music_library = new MusicLibrarySource (), true);
+#. AddSource (video_library = new VideoLibrarySource (), false);
+#: ../src/Core/Banshee.Services/Banshee.Sources/SourceManager.cs:84
+msgid "Libraries"
+msgstr "Gyűjtemények"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/SourceManager.cs:85
+msgid "Online Media"
+msgstr "Online média"
+
 #: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:82
 #: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:91
 msgid "Error opening stream"
@@ -2712,7 +2738,7 @@ msgid "Show:"
 msgstr "Megjelenítés:"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:51
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:84
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:83
 msgid "All"
 msgstr "Mind"
 
@@ -2759,19 +2785,19 @@ msgstr ""
 msgid "{0} of {1}"
 msgstr "{1}/{0}"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:224
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:222
 msgid "Playing"
 msgstr "Lejátszás"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:225
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:223
 msgid "Paused"
 msgstr "Szüneteltetve"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:227
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:225
 msgid "Protected"
 msgstr "Védett"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:228
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:226
 msgid "External Document"
 msgstr "Külső dokumentum"
 
@@ -2865,15 +2891,15 @@ msgstr "Új alapbeállítás"
 msgid "{0} by {1}"
 msgstr "{1} – {0}"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:86
 msgid "_Bookmarks"
 msgstr "_Könyvjelzők"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:89
 msgid "_Add Bookmark"
 msgstr "Könyvjelző _hozzáadása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
 msgid "Bookmark the Position in the Current Track"
 msgstr "Az aktuális számon belüli pozíció felvétele könyvjelzőbe"
 
@@ -2952,7 +2978,7 @@ msgid "Make Banshee the Default"
 msgstr "A Banshee legyen az alapértelmezett"
 
 #. Translators: verb
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:52
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:53
 msgid "I_mport"
 msgstr "I_mportálás"
 
@@ -3045,78 +3071,59 @@ msgstr "_Beállítások"
 msgid "Modify your personal preferences"
 msgstr "Személyes beállítások módosítása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:83
-msgid "Manage _Extensions"
-msgstr "Kiterjesztések _kezelése"
-
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:84
-msgid "Manage extensions to add new features to Banshee"
-msgstr "Kiterjesztések kezelése új szolgáltatások Banshee-hez adása érdekében"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:88
 msgid "_Tools"
 msgstr "_Eszközök"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:92
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:135
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:88
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:134
 msgid "_Help"
 msgstr "_Súgó"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:91
 msgid "_Contents"
 msgstr "_Tartalom"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:99
-msgid "_Web Resources"
-msgstr "_Webes erőforrások"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:102
-msgid "Banshee _User Guide (Wiki)"
-msgstr "Banshee _felhasználói kézikönyv (Wiki)"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:103
-msgid "Learn about how to use Banshee"
-msgstr "Ismerje meg a Banshee használatát"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:108
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
 msgid "Advanced Collection Searching"
 msgstr "Speciális keresés a gyűjteményben"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:109
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:96
 msgid "Learn advanced ways to search your media collection"
-msgstr "A médiagyűjteményben keresésre szolgáló speciális módszerek megismerése"
+msgstr ""
+"A médiagyűjteményben keresésre szolgáló speciális módszerek megismerése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:114
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:101
 msgid "Banshee _Home Page"
 msgstr "A Banshee _honlapja"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:115
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:102
 msgid "Visit the Banshee Home Page"
 msgstr "A Banshee weboldalának meglátogatása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:120
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:107
 msgid "_Get Involved"
 msgstr "_Közreműködés"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:121
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:108
 msgid "Become a contributor to Banshee"
 msgstr "Járuljon hozzá a Banshee fejlesztéséhez"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:126
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:113
 msgid "_Version Information"
 msgstr "_Verzióinformációk"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:127
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:114
 msgid "View detailed version and configuration information"
 msgstr "Részletes verzió -és beállítási adatok megtekintése"
 
 #. Prompt user for location of the playlist.
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:184
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:169
 msgid "Import Playlist"
 msgstr "Lejátszólista importálása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:185
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:559
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:170
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:558
 msgid "Playlists"
 msgstr "Lejátszólisták"
 
@@ -3207,7 +3214,7 @@ msgstr "Most játszott szám ismétlése"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:79
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:80
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
 msgid "Shuffle"
 msgstr "Véletlen sorrendű lejátszás"
 
@@ -3284,8 +3291,8 @@ msgstr "Új _okos lejátszólista"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:129
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:84
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:67
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:71
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:72
 msgid "Refresh"
 msgstr "Frissítés"
 
@@ -3306,163 +3313,168 @@ msgstr "Biztos, hogy törölni kívánja ezt a(z) {0} elemet?"
 msgid "Separate by Type"
 msgstr "Elválasztás típus szerint"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:70
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:110
 msgid "Select _All"
 msgstr "Mindent _kijelöl"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:71
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:111
 msgid "Select all tracks"
 msgstr "Összes szám kijelölése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:74
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:114
 msgid "Select _None"
 msgstr "Kijelölés megszü_ntetése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:75
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:115
 msgid "Unselect all tracks"
 msgstr "Összes szám kijelölésének megszüntetése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:78
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:118
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:59
 msgid "_Edit Track Information"
 msgstr "S_záminformációk szerkesztése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:79
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
 msgid "Edit information on selected tracks"
 msgstr "Kijelölt számok információinak szerkesztése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:82
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:122
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:252
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:113
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:155
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:117
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:159
 msgid "Properties"
 msgstr "Tulajdonságok"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:83
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
 msgid "View information on selected tracks"
 msgstr "Kijelölt számok információinak megjelenítése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
 msgid "Play the selected item"
 msgstr "Kiválasztott elem lejátszása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:130
 msgid "Add _to Playlist"
 msgstr "_Hozzáadás a lejátszólistához"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:131
 msgid "Append selected items to playlist or create new playlist from selection"
 msgstr ""
 "A kijelölt elemek hozzáfűzése a lejátszólistához, vagy új lejátszólista "
 "létrehozása a kijelölésből"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:96
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:136
 msgid "Create new playlist from selected tracks"
 msgstr "Új lejátszólista létrehozása a kijelölt számokból"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:100
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:140
 msgid "_Remove"
 msgstr "_Eltávolítás"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:101
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:141
 msgid "Remove selected track(s) from this source"
 msgstr "Kijelölt számok eltávolítása a forrásból"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:104
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:144
 msgid "Remove From _Library"
 msgstr "Eltávolítás a _gyűjteményből"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:105
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:145
 msgid "Remove selected track(s) from library"
 msgstr "Kijelölt számok eltávolítása a gyűjteményből"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:108
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:148
 msgid "_Open Containing Folder"
 msgstr "_Tartalmazó mappa megnyitása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:109
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:149
 msgid "Open the folder that contains the selected item"
 msgstr "A kijelölt elemet tartalmazó mappa megnyitása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:112
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:152
 msgid "_Delete From Drive"
 msgstr "_Törlés a lemezről"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:113
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:153
 msgid "Permanently delete selected item(s) from medium"
 msgstr "Kijelölt elemek végleges törlése az adathordozóról"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:171
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:159
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:170
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:112
 #, csharp-format
 msgid "_Search"
 msgstr "_Keresés"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:120
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:160
 msgid "Search for items matching certain criteria"
 msgstr "Adott feltételeknek megfelelő elemek keresése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:163
 msgid "By Matching _Album"
 msgstr "_Album szerint"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:124
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:164
 msgid "Search all songs of this album"
 msgstr "Az albumhoz tartozó összes szám keresése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:167
 msgid "By Matching A_rtist"
 msgstr "_Előadó szerint"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:128
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:168
 msgid "Search all songs of this artist"
 msgstr "Az előadó összes számának keresése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:258
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:312
 #, csharp-format
 msgid "_Delete From \"{0}\""
 msgstr "_Törlés innen: „{0}”"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:464
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:532
 msgid "The folder could not be found."
 msgstr "A mappa nem található."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:465
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:533
 msgid "Please check that the track's location is accessible by the system."
 msgstr "Ellenőrizze, hogy a szám helye elérhető a rendszer számára."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:535
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:610
 #, csharp-format
 msgid "Are you sure you want to permanently delete this item?"
-msgid_plural "Are you sure you want to permanently delete the selected {0} items?"
+msgid_plural ""
+"Are you sure you want to permanently delete the selected {0} items?"
 msgstr[0] "Biztos, hogy véglegesen törölni kívánja ezt az elemet?"
 msgstr[1] "Biztos, hogy véglegesen törölni kívánja a kijelölt {0} elemet?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:539
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:614
 msgid "If you delete the selection, it will be permanently lost."
 msgstr "Amennyiben törli a kiválasztott elemet, akkor az végleg elvész."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:542
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:617
 #, csharp-format
 msgid "Remove selection from {0}?"
 msgstr "Eltávolítja a kijelölteket innen: {0}?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:545
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:620
 #, csharp-format
 msgid "Are you sure you want to remove the selected item from your {1}?"
-msgid_plural "Are you sure you want to remove the selected {0} items from your {1}?"
+msgid_plural ""
+"Are you sure you want to remove the selected {0} items from your {1}?"
 msgstr[0] "Biztos, hogy véglegesen törölni kívánja ezt az elemet innen: {1}?"
-msgstr[1] "Biztos, hogy véglegesen törölni kívánja a kiválasztott {0} elemet innen: {1}?"
+msgstr[1] ""
+"Biztos, hogy véglegesen törölni kívánja a kiválasztott {0} elemet innen: {1}?"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:53
 msgid "Com_pilation Album Artist:"
 msgstr "_Válogatásalbum előadója:"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:57
-msgid "Check this if this track is part of an album with tracks by various artists"
-msgstr "Jelölje be, ha ez a szám különböző előadók számait tartalmazó album része"
+msgid ""
+"Check this if this track is part of an album with tracks by various artists"
+msgstr ""
+"Jelölje be, ha ez a szám különböző előadók számait tartalmazó album része"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:59
 msgid ""
@@ -3738,39 +3750,39 @@ msgstr "Fájlméret:"
 msgid "bytes"
 msgstr "bájt"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Editor"
 msgstr "Számszerkesztő"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Properties"
 msgstr "Szám tulajdonságai"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:147
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:149
 msgid "Show the previous track"
 msgstr "Az előző szám megjelenítése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:153
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:155
 msgid "Show the next track"
 msgstr "A következő szám megjelenítése"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:183
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
 msgid "Title:"
 msgstr "Cím:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:184
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:186
 msgid "Artist:"
 msgstr "Előadó:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:187
 msgid "Album:"
 msgstr "Album:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:309
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:311
 msgid "Sync all field _values"
 msgstr "Minden _mezőérték szinkronizálása"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:314
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:316
 msgid ""
 "Apply the values of all common fields set for this track to all of the "
 "tracks selected in this editor"
@@ -3778,23 +3790,23 @@ msgstr ""
 "Ezen számhoz beállított összes általános mező értékének alkalmazása a "
 "szerkesztőben kiválasztott összes többi számra."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:413
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:416
 #, csharp-format
 msgid "<i>Editing {0} of {1} items</i>"
 msgstr "<i>{0}. elem szerkesztése, összesen {1}</i>"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:675
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:678
 #, csharp-format
 msgid "Save the changes made to the open track?"
 msgid_plural "Save the changes made to {0} of {1} open tracks?"
 msgstr[0] "Menti a megnyitott szám módosításait?"
 msgstr[1] "Menti a megnyitott {1} közül {0} szám módosításait?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:692
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:695
 msgid "Close _without Saving"
 msgstr "Bezárás mentés _nélkül"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:729
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:732
 #, csharp-format
 msgid "If you don't save, changes from the last {0} will be permanently lost."
 msgstr "Ha nem ment, az elmúlt {0} módosításai végleg elvesznek."
@@ -3844,24 +3856,24 @@ msgstr[1] "Aktív feladatok futnak"
 #. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
 #. are Podcast Name and Published Date, respectively;
 #. e.g. 'from BBtv published 7/26/2007'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:525
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:523
 #, csharp-format
 msgid "{0}from{1} {2} {0}published{1} {3}"
 msgstr "{2} {0}forrásból{1}, {0}közzétéve:{1} {3}"
 
 #. simply: "Chicago Public Radio" or whatever the artist name is
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:538
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:536
 msgid "Unknown Stream"
 msgstr "Ismeretlen műsor"
 
 #. Translators: {0} and {1} are markup so ignore them, {2} is the name of the radio station
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:541
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:539
 #, csharp-format
 msgid "{0}on{1} {2}"
 msgstr "{0}ezen:{1} {2}"
 
 #. Translators: {0} is the "from {album} by {artist}" type string, and {1} is the "on {radio station name}" string
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:544
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:542
 #, csharp-format
 msgid "{0} {1}"
 msgstr "{0} – {1}"
@@ -3869,14 +3881,14 @@ msgstr "{0} – {1}"
 #. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
 #. are Artist Name and Album Title, respectively;
 #. e.g. 'by Parkway Drive from Killing with a Smile'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:580
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:578
 #, csharp-format
 msgid "{0}by{1} {2} {0}from{1} {3}"
 msgstr "{2} {0}előadó{1} {3} {0}albumáról{1}"
 
 #. Translators: {0} and {1} are for markup so ignore them, {2} is for Album Title;
 #. e.g. 'from Killing with a Smile'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:584
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:582
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:522
 #, csharp-format
 msgid "{0}from{1} {2}"
@@ -3884,7 +3896,7 @@ msgstr "{2} {0}előadó{1}"
 
 #. Translators: {0} and {1} are for markup so ignore them, {2} is for Artist Name;
 #. e.g. 'by Parkway Drive'
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:588
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:586
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:526
 #, csharp-format
 msgid "{0}by{1} {2}"
@@ -3905,7 +3917,8 @@ msgstr "Ez a művelet még dolgozik. Meg szeretné állítani?"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:144
 #, csharp-format
-msgid "The '{0}' operation is still performing work. Would you like to stop it?"
+msgid ""
+"The '{0}' operation is still performing work. Would you like to stop it?"
 msgstr "A(z) {0} művelet még dolgozik. Meg szeretné állítani?"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:148
@@ -3938,10 +3951,8 @@ msgid "Files"
 msgstr "Fájlok"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:63
-#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:82
-msgid "C_hoose Files"
-msgstr "_Válasszon fájlokat"
+msgid "C_hoose Files..."
+msgstr "_Válasszon fájlokat…"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:81
 msgid "_Files to import:"
@@ -3968,8 +3979,8 @@ msgid "Folders"
 msgstr "Mappák"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:57
-msgid "C_hoose Folders"
-msgstr "Válasszon _mappákat"
+msgid "C_hoose Folders..."
+msgstr "Válasszon _mappákat…"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:75
 msgid "_Folders to import:"
@@ -4001,14 +4012,10 @@ msgstr "Ez az ablak ne jelenjen meg többet"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:130
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:82
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
 msgid "_Import"
 msgstr "_Importálás"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs:69
-msgid "Videos From Photos Folder"
-msgstr "Videók a Fényképek mappából"
-
 #: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileComboBox.cs:86
 msgid "No available profiles"
 msgstr "Nincs profil"
@@ -4152,28 +4159,28 @@ msgstr "Némítva"
 msgid "Full Volume"
 msgstr "Teljes hangerő"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:96
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:101
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:102
 msgid "Device"
 msgstr "Eszköz"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:97
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:102
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:104
 msgid "Generation"
 msgstr "Generáció"
 
 #. FIXME
 #. AddDapProperty (Catalog.GetString ("Color"), "black");
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:102
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:107
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:105
 msgid "Capacity"
 msgstr "Kapacitás"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:103
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:108
 msgid "Available"
 msgstr "Elérhető"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:104
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:109
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:106
 #: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:141
 msgid "Serial number"
@@ -4184,42 +4191,42 @@ msgstr "Sorozatszám"
 #. string [] capabilities = new string [ipod_device.ModelInfo.Capabilities.Count];
 #. ipod_device.ModelInfo.Capabilities.CopyTo (capabilities, 0);
 #. AddDapProperty (Catalog.GetString ("Capabilities"), String.Join (", ", capabilities));
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:111
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:116
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:113
 msgid "Supports cover art"
 msgstr "Támogatja a borítókat"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:112
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:117
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:114
 msgid "Supports photos"
 msgstr "Támogatja a fényképeket"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:407
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:412
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:491
 msgid "Track duration is zero"
 msgstr "A szám időtartama nulla"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:510
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:515
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:694
 msgid "Syncing iPod"
 msgstr "iPod szinkronizálása"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:511
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:516
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:695
 msgid "Preparing to synchronize..."
 msgstr "Szinkronizálás előkészítése…"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:514
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:519
 #, csharp-format
 msgid "Adding track {0} of {1}"
 msgstr "{1}/{0} szám hozzáadása"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:550
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:555
 #, csharp-format
 msgid "Removing track {0} of {1}"
 msgstr "{1}/{0} szám eltávolítása"
 
-#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:614
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:619
 msgid "Writing media database"
 msgstr "Média-adatbázis írása"
 
@@ -4234,6 +4241,13 @@ msgstr "{0} szinkronizálása"
 msgid "{0} to add, {1} to remove, {2} to update"
 msgstr "{0} hozzáadandó, {1} eltávolítandó, {2} frissítendő"
 
+#. This group source gives us a seperator for DAPs in the source view.
+#. We add it when we get our first dap source, and then remove it when
+#. we lose the last one.
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapService.cs:63
+msgid "Devices"
+msgstr "Eszközök"
+
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:176
 msgid "Device Properties"
 msgstr "Eszköztulajdonságok"
@@ -4246,23 +4260,23 @@ msgstr "Termék"
 msgid "Vendor"
 msgstr "Gyártó"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:280
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:133
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:284
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:142
 #, csharp-format
 msgid "Loading {0}"
 msgstr "{0} betöltése"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:37
 msgid "Yes"
 msgstr "Igen"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:38
 msgid "No"
 msgstr "Nem"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:385
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
 #, csharp-format
 msgid ""
 "The {0} format is not supported by the device, and no converter was found to "
@@ -4271,17 +4285,18 @@ msgstr ""
 "Az eszköz nem támogatja a(z) {0} formátumot és nem található átalakító az "
 "átalakításához."
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:397
 msgid "File format conversion support is not available"
 msgstr "A fájlformátum-átalakítás nem érhető el"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:417
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:423
 msgid "Error converting file"
 msgstr "Hiba a fájl átalakításakor"
 
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:137
 msgid "Sync when first plugged in and when the libraries change"
-msgstr "Szinkronizálás első csatlakoztatáskor, vagy a gyűjtemények változásakor"
+msgstr ""
+"Szinkronizálás első csatlakoztatáskor, vagy a gyűjtemények változásakor"
 
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:138
 msgid ""
@@ -4300,8 +4315,10 @@ msgstr "Beállítások szinkronizálása"
 #, csharp-format
 msgid "The sync operation will remove one track from your device."
 msgid_plural "The sync operation will remove {0} tracks from your device."
-msgstr[0] "A szinkronizálási művelet el fog távolítani egy számot az eszközről."
-msgstr[1] "A szinkronizálási művelet el fog távolítani {0} számot az eszközről."
+msgstr[0] ""
+"A szinkronizálási művelet el fog távolítani egy számot az eszközről."
+msgstr[1] ""
+"A szinkronizálási művelet el fog távolítani {0} számot az eszközről."
 
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:369
 msgid "Are you sure you want to continue?"
@@ -4609,6 +4626,11 @@ msgstr "Amazon MP3-fájlok"
 msgid "Amazon MP3 Purchase"
 msgstr "Amazon MP3-vásárlás"
 
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:81
+msgid "C_hoose Files"
+msgstr "_Válasszon fájlokat"
+
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSource.cs:42
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:39
 msgid "Amazon MP3 Store"
@@ -4712,8 +4734,9 @@ msgid "Book Title"
 msgstr "Könyv címe"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:68
-msgid "Audiobooks, etc"
-msgstr "Hangoskönyvek stb."
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
+msgid "Audiobooks"
+msgstr "Hangoskönyvek"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:75
 msgid "Search your audiobooks"
@@ -4726,6 +4749,10 @@ msgid_plural "{0} books"
 msgstr[0] "{0} könyv"
 msgstr[1] "{0} könyv"
 
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:149
+msgid "Audiobooks Folder"
+msgstr "Hangoskönyvek mappa"
+
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/BookView.cs:114
 msgid "Resume Playback"
 msgstr "Lejátszás folytatása"
@@ -4735,7 +4762,7 @@ msgid "No Bookmark Set"
 msgstr "Nincs beállítva könyvjelző"
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:76
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:55
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:56
 msgid "Audio CD"
 msgstr "Hang CD"
 
@@ -4810,7 +4837,7 @@ msgstr ""
 "például a karcolásokat, de ez lényegesen lelassítja az importálást."
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:320
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:441
 msgid "Import CD"
 msgstr "CD importálása"
 
@@ -4826,46 +4853,46 @@ msgstr "CD másolása"
 msgid "Duplicate this audio CD"
 msgstr "Hang CD másolása"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:130
-msgid "Searching for CD metadata..."
-msgstr "CD metaadatainak keresése…"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:131
+msgid "Searching for track information..."
+msgstr "Száminformációk keresése…"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:163
-msgid "Could not fetch metadata for CD."
-msgstr "A CD metaadatainak lekérése nem sikerült."
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:164
+msgid "Could not fetch track information"
+msgstr "A száminformációk lekérése nem sikerült"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:191
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:192
 msgid "Automatic import off since this album is already in the Music Library."
 msgstr ""
 "Automatikus importálás kikapcsolva, mivel ez az album már benne van a "
 "gyűjteményben."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:214
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:215
 msgid "Could not import CD"
 msgstr "Nem sikerült importálni a CD-t"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:231
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:232
 msgid "Could not duplicate audio CD"
 msgstr "Nem lehet másolni a hang CD-t"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:363
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:364
 msgid "Ejecting audio CD..."
 msgstr "Hang CD kiadása…"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:381
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:382
 #, csharp-format
 msgid "Could not eject audio CD: {0}"
 msgstr "Nem lehet kiadni a hang CD-t: {0}"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:414
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
 msgid "Audio CD Preferences"
 msgstr "Hang CD tulajdonságai"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:416
 msgid "Eject Disc"
 msgstr "Lemez kiadása"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:439
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
 #, csharp-format
 msgid "Import ‟{0}”"
 msgstr "„{0}” importálása"
@@ -4896,11 +4923,11 @@ msgstr ""
 "A szám BPM-ének saját kezű beállításához nyomja le ezt a gombot az ütem "
 "szerint"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:147
 msgid "_Automatically detect BPM for all songs"
 msgstr "Minden s_zám BPM-ének automatikus felismerése"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:149
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
 msgid ""
 "Detect beats per minute (BPM) for all songs that don't already have a value "
 "set"
@@ -5078,15 +5105,15 @@ msgstr "Letöltések megszakítása"
 msgid "Waiting for downloads to terminate..."
 msgstr "Várakozás a letöltések befejezésére…"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:60
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:59
 msgid "Import eMusic Downloads to Library"
 msgstr "eMusic letöltések importálása a gyűjteménybe"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:62
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:61
 msgid "eMusic Files"
 msgstr "eMusic fájlok"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:78
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:77
 msgid "eMusic Tracks"
 msgstr "eMusic számok"
 
@@ -5096,7 +5123,7 @@ msgid "File System Queue"
 msgstr "Fájlrendszersor"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:72
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
 msgid "Clear"
 msgstr "Törlés"
 
@@ -5105,7 +5132,7 @@ msgid "Remove all tracks from the file system queue"
 msgstr "Minden szám eltávolítása a fájlrendszersorból"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:79
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:81
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
 msgid "Clear on Quit"
 msgstr "Törlés kilépéskor"
 
@@ -5190,18 +5217,33 @@ msgstr ", {0}"
 msgid "Fix?"
 msgstr "Javítja?"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:48
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:51
 msgid "View Item Details"
 msgstr "Elem részleteinek megjelenítése"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:57
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:60
 msgid "Open Webpage"
 msgstr "Weboldal megnyitása"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:76
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:79
 msgid "Visit Archive.org"
 msgstr "Archive.org felkeresése"
 
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:83
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
+msgid "Subscribe"
+msgstr "Feliratkozás"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:84
+msgid "Subscribe to this search as a podcast"
+msgstr "Feliratkozás erre a keresésre podcastként"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:88
+#, csharp-format
+msgid "Internet Archive: {0}"
+msgstr "Internetarchívum: {0}"
+
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:78
 msgid "Close Item"
 msgstr "Elem bezárása"
@@ -5212,7 +5254,8 @@ msgstr "Elem részleteinek lekérése az internetarchívumból"
 
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:148
 msgid "Timed out getting item details from the Internet Archive"
-msgstr "Az elem részleteinek lekérése az internetarchívumból túllépte az időkorlátot"
+msgstr ""
+"Az elem részleteinek lekérése az internetarchívumból túllépte az időkorlátot"
 
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:149
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:190
@@ -5228,7 +5271,7 @@ msgstr "Hiba az elem részleteinek lekérésekor az internetarchívumból"
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:130
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:66
 #: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:271
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:89
 msgid "Description"
 msgstr "Leírás"
@@ -5332,16 +5375,16 @@ msgstr "{0} ettől: {1}, ekkor: {2}"
 msgid "Write your own review"
 msgstr "Írjon saját értékelést"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:109
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:108
 msgid "Collection:"
 msgstr "Gyűjtemény:"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:118
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:117
 #, csharp-format
 msgid "Optional Query"
 msgstr "Elhagyható lekérdezés"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:165
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:164
 msgid "Sort by:"
 msgstr "Rendezés:"
 
@@ -5443,10 +5486,6 @@ msgstr ""
 msgid "Visit the Internet Archive online at archive.org"
 msgstr "Keresse fel az internetarchívumot az archive.org címen"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
-msgid "Audiobooks"
-msgstr "Hangoskönyvek"
-
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:308
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:78
 msgid "Movies"
@@ -5720,11 +5759,11 @@ msgstr "Állomás hozzáadása"
 msgid "Add a new Internet Radio station or playlist"
 msgstr "Új internetes rádióállomás vagy lejátszólista hozzáadása"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:81
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:83
 msgid "Search your stations"
 msgstr "Állomások keresése"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:82
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:84
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationEditor.cs:60
 msgid "Edit Station"
 msgstr "Állomás szerkesztése"
@@ -6247,7 +6286,8 @@ msgstr "Miro műsorújság"
 
 #: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/MiroGuideSource.cs:97
 msgid "Discover interesting podcasts in the Miro Guide podcast directory!"
-msgstr "Fedezzen fel érdekes podcastokat a Miro műsorújság podcastgyűjteményében!"
+msgstr ""
+"Fedezzen fel érdekes podcastokat a Miro műsorújság podcastgyűjteményében!"
 
 #: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/MiroGuideSource.cs:100
 msgid "Open Miro Guide"
@@ -6311,24 +6351,25 @@ msgstr "Egyszerűsítés"
 
 #: ../src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingSource.cs:60
 msgid "Simplify the Now Playing interface by hiding the source list and more"
-msgstr "A Most játszott felület egyszerűsítése a forráslista és egyebek elrejtésével"
+msgstr ""
+"A Most játszott felület egyszerűsítése a forráslista és egyebek elrejtésével"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:144
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:143
 #, csharp-format
 msgid "Unable to import track: {0}"
 msgstr "A szám nem importálható: {0}"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:178
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:177
 msgid "Importing from Amarok failed"
 msgstr "Az importálás meghiúsult az Amarokból"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:189
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:188
 msgid "Amarok"
 msgstr "Amarok"
 
 #. TODO add Help button and dialog/tooltip
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:68
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:383
 msgid "iTunes Importer"
 msgstr "iTunes importáló"
 
@@ -6345,24 +6386,24 @@ msgid "Import playlists"
 msgstr "Lejátszólisták importálása"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:120
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
 #, csharp-format
 msgid "Locate your \"{0}\" file..."
 msgstr "„{0}” fájl keresése…"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:138
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
 #, csharp-format
 msgid "Locate \"{0}\""
 msgstr "„{0}” keresése"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:167
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:389
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
 msgid "Locate iTunes Music Directory"
 msgstr "iTunes zenekönyvtár keresése"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:196
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:391
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:390
 #, csharp-format
 msgid ""
 "The iTunes library refers to your music directory as \"{0}\" but Banshee was "
@@ -6371,13 +6412,13 @@ msgstr ""
 "Az iTunes gyűjtemény a zenei könyvtárra „{0}” néven hivatkozik, de a Banshee "
 "nem találja a könyvtár helyét. Adja meg a könyvtárat."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:75
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:393
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:74
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:392
 msgid "iTunes Media Player"
 msgstr "iTunes médialejátszó"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:135
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:395
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:134
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:394
 msgid ""
 "Banshee is not familiar with this version of the iTunes library format. "
 "Importing may or may not work as expected, or at all. Would you like to "
@@ -6387,17 +6428,17 @@ msgstr ""
 "importálás működhet a várt módon vagy attól eltérően, de lehet hogy "
 "egyáltalán nem fog működni. Mindenképp megpróbálja az importálást?"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:440
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:236
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:397
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:439
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:235
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:396
 msgid "Unable to import song."
 msgstr "A szám nem importálható."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:370
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:369
 msgid "Rhythmbox Music Player"
 msgstr "Rhythmbox zenelejátszó"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
 msgid "Import _playlists"
 msgstr "_Lejátszólisták importálása"
 
@@ -6409,35 +6450,76 @@ msgstr "Ki_töltés"
 msgid "f_rom"
 msgstr "_ebből:"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:50
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
 msgid "Add to Play Queue"
 msgstr "Hozzáadás a lejátszási sorhoz"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:51
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:53
 msgid "Append selected songs to the play queue"
 msgstr "A kijelölt számok hozzáfűzése a lejátszási sorhoz"
 
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
+msgid "Play After"
+msgstr "Lejátszás ez után:"
+
 #: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:58
+msgid "Add selected songs after the currently playing track, album, or artist"
+msgstr ""
+"A kijelölt számok hozzáfűzése a jelenleg lejátszott szám, album vagy előadó "
+"után"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
+msgid "Current Track"
+msgstr "Jelenlegi szám"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:63
+msgid "Add selected songs to the play queue after the currently playing song"
+msgstr ""
+"A kijelölt számok hozzáfűzése a lejátszási sorhoz a jelenleg lejátszott szám "
+"után"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
+msgid "Current Album"
+msgstr "Jelenlegi album"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:68
+msgid "Add selected songs to the play queue after the currently playing album"
+msgstr ""
+"A kijelölt számok hozzáfűzése a lejátszási sorhoz a jelenleg lejátszott "
+"album után"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
+msgid "Current Artist"
+msgstr "Jelenlegi előadó"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:73
+msgid "Add selected songs to the play queue after the currently playing artist"
+msgstr ""
+"A kijelölt számok hozzáfűzése a lejátszási sorhoz a jelenleg lejátszott "
+"előadó után"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:80
 msgid "Refresh random tracks in the play queue"
 msgstr "Véletlen számok frissítése a lejátszási sorban"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:63
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:85
 msgid "Randomize the playback order of items in the play queue"
-msgstr "A lejátszási sorban lévő elemek lejátszási sorrendjének véletlenszerűsítése"
+msgstr ""
+"A lejátszási sorban lévő elemek lejátszási sorrendjének véletlenszerűsítése"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
 msgid "Add More"
 msgstr "További hozzáadása"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:68
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:90
 msgid "Add more random tracks to the play queue"
 msgstr "További véletlen számok hozzáadása a lejátszási sorhoz"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:73
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:95
 msgid "Remove all tracks from the play queue"
 msgstr "Kijelölt számok eltávolítása a lejátszási sorból"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:82
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:104
 msgid "Clear the play queue when quitting"
 msgstr "A lejátszási sor törlése kilépéskor"
 
@@ -6445,16 +6527,17 @@ msgstr "A lejátszási sor törlése kilépéskor"
 msgid "Remove From Play Queue"
 msgstr "Eltávolítás a lejátszási sorból"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:864
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:959
 msgid "Number of _played songs to show"
 msgstr "Megjelenítendő l_ejátszott számok száma"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:870
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:965
 msgid "Number of _upcoming songs to show"
 msgstr "Megjelenítendő _soron következő számok száma"
 
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastFeedModel.cs:47
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:270
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:89
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:86
 msgid "Podcast"
 msgstr "Podcast"
@@ -6464,54 +6547,58 @@ msgstr "Podcast"
 msgid "All Podcasts ({0})"
 msgstr "Minden podcast ({0})"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:122
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:104
+msgid "Podcasts Folder"
+msgstr "Podcastok mappa"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:131
 msgid "Remove Podcast"
 msgstr "Podcast eltávolítása"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:127
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:136
 msgid "Disable Auto Updates"
 msgstr "Automatikus frissítések letiltása"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:145
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:154
 #, csharp-format
 msgid "Network error updating {0}"
 msgstr "Hálózati hiba a(z) {0} frissítésekor"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:151
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:160
 #, csharp-format
 msgid "Parsing error updating {0}"
 msgstr "Feldolgozási hiba a(z) {0} frissítésekor"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:154
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:163
 #, csharp-format
 msgid "Authentication error updating {0}"
 msgstr "Hitelesítési hiba a(z) {0} frissítésekor"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:157
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:166
 #, csharp-format
 msgid "Error updating {0}"
 msgstr "Hiba a(z) {0} frissítésekor"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:213
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:222
 msgid "Search your podcasts"
 msgstr "Podcastok keresése"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:270
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:88
 msgid "Published"
 msgstr "Közzétéve"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:270
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:66
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
 msgid "New"
 msgstr "Új"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:271
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellDownloadStatus.cs:57
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:66
 msgid "Downloaded"
 msgstr "Letöltve"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:293
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:312
 #, csharp-format
 msgid "{0} episode"
 msgid_plural "{0} episodes"
@@ -6561,69 +6648,76 @@ msgstr "Podcastok letöltése"
 msgid "Cancel all podcast downloads?"
 msgstr "Megszakítja az összes podcast letöltését?"
 
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/HeaderWidget.cs:99
+msgid "_Limit to episodes from"
+msgstr "K_orlátozás epizódokra innen:"
+
 #. "<control><shift>U",
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:72
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:73
 msgid "Check all podcasts for new episodes"
 msgstr "Új epizódok keresése minden podcastban"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:77
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:78
 msgid "Add Podcast..."
 msgstr "Podcast hozzáadása…"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:78
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:79
 msgid "Subscribe to a new podcast"
 msgstr "Feliratkozás új podcastre"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:89
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:93
 msgid "Unsubscribe and Delete"
 msgstr "Leiratkozás és törlés"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:95
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:99
 msgid "Check for New Episodes"
 msgstr "Új epizódok keresése"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:101
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:105
 msgid "Download All Episodes"
 msgstr "Az összes epizód letöltése"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:107
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:111
 msgid "Visit Podcast Homepage"
 msgstr "A podcast honlapjának meglátogatása"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:119
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:123
 msgid "Mark as New"
 msgstr "Megjelölés újként"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:125
-msgid "Mark as Old"
-msgstr "Megjelölés régiként"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:129
+msgid "Archive"
+msgstr "Archívum"
 
 #. Translators: this is a verb used as a button name, not a noun
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:131
-msgid "Download Podcast(s)"
-msgstr "Podcastek letöltése"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:135
+msgid "Download"
+msgstr "Letöltés"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:137
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:141
 msgid "Cancel Download"
 msgstr "Letöltés megszakítása"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:143
-msgid "Remove Downloaded File(s)"
-msgstr "Letöltött fájlok eltávolítása"
-
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:149
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:153
 msgid "Visit Website"
 msgstr "Honlap felkeresése"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:161
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:165
 msgid "Add Podcast"
 msgstr "Podcast hozzáadása"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:325
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:262
+#, csharp-format
+msgid "Delete File"
+msgid_plural "Delete Files"
+msgstr[0] "Fájl törlése"
+msgstr[1] "Fájlok törlése"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:343
 msgid "Invalid URL"
 msgstr "Érvénytelen URL"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:326
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:344
 msgid "Podcast URL is invalid."
 msgstr "A podcast URL címe érvénytelen."
 
@@ -6658,17 +6752,13 @@ msgstr "Nincs leírás"
 msgid "Podcast:"
 msgstr "Podcast:"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
-msgid "Subscribe"
-msgstr "Feliratkozás"
-
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:92
 msgid "Subscribe to New Podcast"
 msgstr "Feliratkozás új podcastre"
 
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:100
-msgid "Please enter the URL of the podcast to which you would like to subscribe."
+msgid ""
+"Please enter the URL of the podcast to which you would like to subscribe."
 msgstr "Adja meg a podcast URL címét, amelyre fel kíván iratkozni."
 
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:112
@@ -6722,7 +6812,6 @@ msgid "No videos found"
 msgstr "Nincsenek videók"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/Accessibility/ColumnHeaderCellTextAccessible.cs:36
-#| msgid "Hide context pane"
 msgid "open context menu"
 msgstr "helyi menü megnyitása"
 
@@ -6731,7 +6820,6 @@ msgid "click"
 msgstr "kattintson"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/Accessibility/ColumnHeaderCellTextAccessible.cs:37
-#| msgid "Venue:"
 msgid "menu"
 msgstr "menü"
 
@@ -6747,7 +6835,6 @@ msgid "{0} Encountered a Fatal Error"
 msgstr "{0} végzetes hibát észlelt"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/ExceptionDialog.cs:92
-#| msgid "Episode Details"
 msgid "Error Details"
 msgstr "Hiba részletei"
 
@@ -6756,7 +6843,6 @@ msgid "An unhandled exception was thrown: "
 msgstr "Kezeletlen kivétel történt: "
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/VersionInformationDialog.cs:58
-#| msgid "_Version Information"
 msgid "Assembly Version Information"
 msgstr "Összeállítás verzióadatai"
 
@@ -6769,22 +6855,18 @@ msgid "KB"
 msgstr "KB"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:86
-#| msgid "Con_ductor:"
 msgid "Condition:"
 msgstr "Feltétel:"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:104
-#| msgid "_Search"
 msgid "_Match"
 msgstr "Illes_zkedjen"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:111
-#| msgid "All"
 msgid "all"
 msgstr "mind"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:112
-#| msgid "Fan"
 msgid "any"
 msgstr "bármely"
 
@@ -6793,43 +6875,34 @@ msgid "of the following:"
 msgstr "a következők közül:"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryLimitBox.cs:58
-#| msgid "Similar to"
 msgid "_Limit to"
 msgstr "_Korlátozás"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryLimitBox.cs:85
-#| msgid "(none selected)"
 msgid "selected by"
 msgstr "kiválasztási szempont:"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/RelativeTimeSpanQueryValueEntry.cs:42
-#| msgid "Tag"
 msgid "ago"
 msgstr "óta"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:59
-#| msgid "{0} second"
-#| msgid_plural "{0} seconds"
 msgid "seconds"
 msgstr "másodperc"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:62
-#| msgid "plays"
 msgid "days"
 msgstr "nap"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:63
-#| msgid "Seek"
 msgid "weeks"
 msgstr "hét"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:64
-#| msgid "minutes"
 msgid "months"
 msgstr "hónap"
 
 #: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:65
-#| msgid "year"
 msgid "years"
 msgstr "év"
 
@@ -6852,38 +6925,32 @@ msgstr[1] "{0} letöltése, {1}/s ({2} függőben)"
 #. public static readonly Operator LessThanEqual      = new Operator ("lessThanEquals", "<= {0}", "<=");
 #. public static readonly Operator GreaterThanEqual   = new Operator ("greaterThanEquals", ">= {0}", ">=");
 #: ../src/Hyena/Hyena/Hyena.Query/DateQueryValue.cs:47
-#| msgid "Refresh"
 msgid "before"
 msgstr "ez előtt:"
 
 #: ../src/Hyena/Hyena/Hyena.Query/DateQueryValue.cs:48
-#| msgid "Other"
 msgid "after"
 msgstr "ez után:"
 
 #: ../src/Hyena/Hyena/Hyena.Query/EnumQueryValue.cs:43
 #: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:41
 #: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:45
-#| msgid "Disc"
 msgid "is"
 msgstr "="
 
 #: ../src/Hyena/Hyena/Hyena.Query/EnumQueryValue.cs:44
 #: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:42
 #: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:46
-#| msgid "Disc Count"
 msgid "is not"
 msgstr "nem"
 
 #: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:43
 #: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:47
-#| msgid "artist"
 msgid "at most"
 msgstr "legfeljebb"
 
 #: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:44
 #: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:46
-#| msgid "Smart Playlist"
 msgid "at least"
 msgstr "legalább"
 
@@ -6904,13 +6971,10 @@ msgstr "üres"
 
 #: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:90
 #, csharp-format
-#| msgid "{0} day"
-#| msgid_plural "{0} days"
 msgid "{0} ago"
 msgstr "{0} ideje"
 
 #: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:43
-#| msgid "Container"
 msgid "contains"
 msgstr "tartalmazza"
 
@@ -6919,7 +6983,6 @@ msgid "doesn't contain"
 msgstr "nem tartalmazza"
 
 #: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:47
-#| msgid "stars"
 msgid "starts with"
 msgstr "ezzel kezdődik"
 
@@ -6984,7 +7047,8 @@ msgid "The API key used by this application is invalid."
 msgstr "Az alkalmazás által használt API kulcs érvénytelen."
 
 #: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:289
-msgid "The streaming system is offline for maintenance, please try again later."
+msgid ""
+"The streaming system is offline for maintenance, please try again later."
 msgstr ""
 "A műsorszórási rendszer karbantartás miatt nem érhető el, próbálja újra "
 "később."
@@ -7042,4 +7106,3 @@ msgstr "Kapcsolódva a last.fm-hez."
 #: ../src/Libraries/Migo/Migo.Syndication/RssParser.cs:100
 msgid "Unknown Podcast"
 msgstr "Ismeretlen podcast"
-
diff --git a/po/sl.po b/po/sl.po
index 8ddf7bc..621d33d 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: banshee\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=banshee&component=general\n"
-"POT-Creation-Date: 2010-11-05 02:22+0000\n"
-"PO-Revision-Date: 2010-11-05 09:47+0100\n"
+"POT-Creation-Date: 2010-11-18 19:36+0000\n"
+"PO-Revision-Date: 2010-11-19 10:10+0100\n"
 "Last-Translator: Andrej Žnidaršič <andrej.znidarsic at gmail.com>\n"
 "Language-Team: Slovenian GNOME Translation Team <gnome-si at googlegroups.com>\n"
 "Language: \n"
@@ -700,7 +700,7 @@ msgstr "Windows zvočna datoteka"
 
 #: ../data/desktop-files/common.desktop.in.h:1
 #: ../src/Clients/Muinshee/Muinshee/PlayerInterface.cs:76
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:105
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:107
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:206
 #: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:60
 msgid "Banshee Media Player"
@@ -802,11 +802,11 @@ msgstr "Zapiši na CD ..."
 msgid "Write selected tracks to an audio CD"
 msgstr "Zapiši izbrane skladbe na zvočni CD"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:104
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
 msgid "Could not write CD"
 msgstr "CD-ja ni mogoče zapisati"
 
-#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:106
 msgid "Brasero could not be started"
 msgstr "Programa Brasero ni bilo mogoče zagnati"
 
@@ -870,7 +870,7 @@ msgid "_Close"
 msgstr "_Zapri"
 
 #: ../src/Backends/Banshee.Osx/Banshee.OsxBackend/OsxService.cs:92
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:249
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:251
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:79
 #: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:133
 msgid "Close"
@@ -1159,7 +1159,7 @@ msgstr "_Razvrsti"
 #: ../src/Clients/Muinshee/Muinshee/BaseDialog.cs:86
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:196
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:86
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:126
 msgid "_Play"
 msgstr "_Predvajaj"
 
@@ -1189,7 +1189,7 @@ msgid "Play Song"
 msgstr "Predvajanje skladbe"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:457
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:465
 msgid "Search"
 msgstr "Iskanje"
 
@@ -1249,7 +1249,7 @@ msgid "Stream location not found"
 msgstr "Mesta pretoka ni mogoče najti"
 
 #: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:324
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:328
 msgid "File not found"
 msgstr "Datoteke ni mogoče najti"
 
@@ -1310,17 +1310,17 @@ msgstr "_Skoči na predvajan predmet"
 
 #. Translators: This is used to generate bookmark names. {0} is track title, {1} is minutes
 #. (possibly more than two digits) and {2} is seconds (between 00 and 60).
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:173
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:172
 #, csharp-format
 msgid "{0} ({1}:{2:00})"
 msgstr "{0} ({1}:{2:00})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:70
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:69
 #, csharp-format
 msgid "All Albums ({0})"
 msgstr "Vsi albumi ({0})"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:69
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:68
 #, csharp-format
 msgid "All Artists ({0})"
 msgstr "Vsi izvajalci ({0})"
@@ -1330,15 +1330,15 @@ msgstr "Vsi izvajalci ({0})"
 msgid "Value"
 msgstr "Vrednost"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:49
 msgid "Shuffle by A_lbum"
 msgstr "Premešaj _albume"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
 msgid "by album"
 msgstr "po albumu"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:52
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
 msgid "Play all songs from an album, then randomly choose another album"
 msgstr "Predvajanje vseh skladb iz albuma, nato naključno izbiranje drugega albuma"
 
@@ -1354,27 +1354,27 @@ msgstr "po izvajalcu"
 msgid "Play all songs by an artist, then randomly choose another artist"
 msgstr "Predvajanje vseh skladb izvajalca, nato naključno izbiranje drugega izvajalca"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:36
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
 msgid "Shuffle _Off"
 msgstr "_Brez mešanja"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:37
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:39
 msgid "manually"
 msgstr "ročno"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:40
 msgid "Do not shuffle playlist"
 msgstr "Brez mešanja seznama predvajanja"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:45
 msgid "Shuffle by _Rating"
 msgstr "Premešaj po _oceni"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
 msgid "by rating"
 msgstr "po oceni"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
 msgid "Play songs randomly, prefer higher rated songs"
 msgstr "Naključno predvajanje skladb, prednostno skladbe z višjimi ocenami"
 
@@ -1390,15 +1390,15 @@ msgstr "po točkah"
 msgid "Play songs randomly, prefer higher scored songs"
 msgstr "Naključno predvajanje skladb, prednostno skladbe z višjimi rezultati"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:46
 msgid "Shuffle by _Song"
 msgstr "Premešaj _skladbe"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
 msgid "by song"
 msgstr "po skladbi"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:49
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
 msgid "Play songs randomly from the playlist"
 msgstr "Naključno predvajanje skladb iz seznama predvajanja"
 
@@ -1407,7 +1407,7 @@ msgid "Scanning for media"
 msgstr "Preiskovanje za večpredstavnostne datoteke"
 
 #: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:188
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1382
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1384
 msgid "Scanning..."
 msgstr "Preiskovanje ..."
 
@@ -1432,20 +1432,20 @@ msgstr "Postopek uvažanja je v teku. Ali ga želite zaustaviti?"
 msgid "Importing {0} of {1}"
 msgstr "Uvažanje {0} od {1}"
 
-#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:78
 #, csharp-format
 msgid "Rescanning {0} of {1}"
 msgstr "Ponovno preiskovanje {0} od {1}"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:234
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:232
 msgid "Upgrading your Banshee Database"
 msgstr "Nadgrajevanje podatkovne zbirke Banshee"
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:235
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:233
 msgid "Please wait while your old Banshee database is migrated to the new format."
 msgstr "Počakajte, da se stara Banshee podatkovna zbirka pretvori v novo vrsto zapisa."
 
-#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1379
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1381
 msgid "Refreshing Metadata"
 msgstr "Osveževanje metapodatkov"
 
@@ -1517,10 +1517,6 @@ msgstr "Mehki rock"
 msgid "Techno"
 msgstr "Tehno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs:48
-msgid "Home Folder"
-msgstr "Domača mapa"
-
 #: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:58
 msgid "Remove From Library"
 msgstr "Odstrani iz knjižnice"
@@ -1596,26 +1592,26 @@ msgid "Grouping"
 msgstr "Združevanje"
 
 #. Catalog.GetString ("Music Library")
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:60
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/MusicGroupSource.cs:39
 msgid "Music"
 msgstr "Glasba"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:65
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:66
 msgid "Search your music"
 msgstr "Iščite po svoji glasbi"
 
 #. Misc section
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:80
 #: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:65
 msgid "Miscellaneous"
 msgstr "Razno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:82
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:83
 msgid "_Sort an artist's albums by year, not title"
 msgstr "_Razvrsti izvajalčeve albume po letu, ne naslovu"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:92
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:93
 #, csharp-format
 msgid "{0} song"
 msgid_plural "{0} songs"
@@ -1624,81 +1620,89 @@ msgstr[1] "{0} skladba"
 msgstr[2] "{0} skladbi"
 msgstr[3] "{0} skladbe"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:113
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:114
 msgid "Music Folder"
 msgstr "Mapa glasbe"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:118
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
 #: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:95
 msgid "Favorites"
 msgstr "Priljubljeno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:120
 msgid "Songs rated four and five stars"
 msgstr "Skladbe ocenjene s štirimi in petimi zvezdicami"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:123
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
 msgid "Recent Favorites"
 msgstr "Nedavno priljubljeno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:125
 msgid "Songs listened to often in the past week"
 msgstr "Pogosto poslušane skladbe v zadnjem tednu"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:128
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:95
 msgid "Recently Added"
 msgstr "Nedavno dodano"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:130
 msgid "Songs imported within the last week"
 msgstr "Skladbe uvožene v zadnjem tednu"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:133
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
+msgid "Recently Played"
+msgstr "Nedavno predvajano"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:135
+msgid "Recently played songs"
+msgstr "Nedavno predvajane skladbe"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:139
 msgid "Unheard"
 msgstr "Ne slišano"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:140
 msgid "Songs that have not been played or skipped"
 msgstr "Nikoli predvajane in nikoli preskočene skladbe"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:141
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
 msgid "Neglected Favorites"
 msgstr "Spregledane priljubljene"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:142
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:148
 msgid "Favorites not played in over two months"
 msgstr "Priljubljeno in nepredvajano v zadnjih 2 mesecih"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:146
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
 msgid "Least Favorite"
 msgstr "Najmanj priljubljeno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:153
 msgid "Songs rated one or two stars or that you have frequently skipped"
 msgstr "Skladbe, ki so bile ocenjene z eno ali dvema zvezdicama, ali pa so pogosto preskočene"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:151
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
 msgid "700 MB of Favorites"
 msgstr "700 MB priljubljenih"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
 msgid "A data CD worth of favorite songs"
 msgstr "Podatkovni CD vreden priljubljenih skladb"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
 msgid "80 Minutes of Favorites"
 msgstr "80 minut priljubljenih"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
 msgid "An audio CD worth of favorite songs"
 msgstr "Zvočni CD vreden priljubljenih skladb"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:169
 msgid "Unrated"
 msgstr "Neocenjeno"
 
-#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:170
 msgid "Songs that haven't been rated"
 msgstr "Neocenjene skladbe"
 
@@ -1841,33 +1845,33 @@ msgstr "_Onemogoči zmožnosti, ki zahtevajo medmrežni dostop"
 msgid "Some features require a broadband Internet connection such as Last.fm or cover art fetching"
 msgstr "Nekatere zmožnosti kot so Last.fm ali pridobivanje naslovnic zahtevajo širokopasovno medmrežno povezavo "
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:160
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:159
 msgid "Search this playlist"
 msgstr "Išče po temu seznamu predvajanja"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:229
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:228
 msgid "The track's rating was set differently on the device and in Banshee"
 msgstr "Ocena skladbe v Banshee se razlikuje od ocene na napravi"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:58
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:309
 msgid "Playlist"
 msgstr "Seznam predvajanja"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:133
 msgid "Remove From Playlist"
 msgstr "Odstrani iz seznama predvajanja"
 
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:135
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
 msgid "Delete Playlist"
 msgstr "Izbriši seznam predvajanja"
 
 #. TODO generate name based on the track selection, or begin editing it
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:386
-#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:392
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:385
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:391
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:176
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:95
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:394
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:135
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:452
 #: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:542
 #: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView_DragAndDrop.cs:214
 msgid "New Playlist"
@@ -2337,7 +2341,7 @@ msgid "importedon"
 msgstr "uvoženo ob"
 
 #: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:315
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:65
 msgid "Smart Playlist"
 msgstr "Pameten seznam predvajanja"
 
@@ -2471,7 +2475,7 @@ msgstr "drm"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:208
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:210
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:212
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:383
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:389
 msgid "Unknown"
 msgstr "Neznano"
 
@@ -2479,26 +2483,26 @@ msgstr "Neznano"
 msgid "unknown"
 msgstr "neznano"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:78
 msgid "Unable to Migrate Smart Playlists"
 msgstr "Pametnega seznama predvajanja ni mogoče preseliti"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:80
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
 #, csharp-format
 msgid "Please file a bug with this error: {0}"
 msgstr "Napišite poročilo o hrošču s to napako: {0}"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:67
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
 #: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:49
 msgid "Edit Smart Playlist"
 msgstr "Uredi pameten seznam predvajanja"
 
-#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:242
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:249
 msgid "Delete Smart Playlist"
 msgstr "Izbriši pameten seznam predvajanja"
 
 #: ../src/Core/Banshee.Services/Banshee.Sources/DatabaseSource.cs:147
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:163
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:161
 #, csharp-format
 msgid "All Genres ({0})"
 msgstr "Vse zvrsti ({0})"
@@ -2587,12 +2591,12 @@ msgstr "Hie_rarhija map"
 msgid "File _name"
 msgstr "Ime _datoteke"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:693
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:669
 #, csharp-format
 msgid "Adding {0} of {1} to {2}"
 msgstr "Dodajanje {0} od {1} k {2}"
 
-#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:712
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:688
 #, csharp-format
 msgid "Deleting {0} of {1} From {2}"
 msgstr "Brisanje {0} od {1} iz {2}"
@@ -2808,19 +2812,19 @@ msgstr "Novo nastavljeno "
 msgid "{0} by {1}"
 msgstr "{0} od {1}"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:86
 msgid "_Bookmarks"
 msgstr "_Zaznamki"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:89
 msgid "_Add Bookmark"
 msgstr "_Dodaj zaznamek"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
 msgid "Bookmark the Position in the Current Track"
 msgstr "Dodajanje zaznamka lege v trenutni skladbi"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:104
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:103
 msgid "_Remove Bookmark"
 msgstr "_Odstrani zaznamek"
 
@@ -2886,7 +2890,7 @@ msgid "Make Banshee the Default"
 msgstr "Nastavi Banshee kot privzeti program"
 
 #. Translators: verb
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:52
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:53
 msgid "I_mport"
 msgstr "_Uvozi"
 
@@ -2993,56 +2997,44 @@ msgid "_Contents"
 msgstr "_Vsebina"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
-msgid "_Web Resources"
-msgstr "_Spletni viri"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:98
-msgid "Banshee _User Guide (Wiki)"
-msgstr "Banshee _uporabniški vodič (Wiki)"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:99
-msgid "Learn about how to use Banshee"
-msgstr "Naučite se kako uporabljati Banshee"
-
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:104
 msgid "Advanced Collection Searching"
 msgstr "Napredno iskanje po zbirki"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:105
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:96
 msgid "Learn advanced ways to search your media collection"
 msgstr "Učenje naprednih načinov iskanja po svoji zbirki večpredstavnostnih datotek"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:110
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:101
 msgid "Banshee _Home Page"
 msgstr "_Domača stran Banshee"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:111
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:102
 msgid "Visit the Banshee Home Page"
 msgstr "Obiščite domačo stran programa Banshee"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:116
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:107
 msgid "_Get Involved"
 msgstr "_Vključite se"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:117
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:108
 msgid "Become a contributor to Banshee"
 msgstr "Sodelujte pri projektu Banshee"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:122
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:113
 msgid "_Version Information"
 msgstr "_Podrobnosti različice"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:123
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:114
 msgid "View detailed version and configuration information"
 msgstr "Pogled podrobnosti različice in nastavitev"
 
 #. Prompt user for location of the playlist.
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:178
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:169
 msgid "Import Playlist"
 msgstr "Uvozi seznam predvajanja"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:179
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:559
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:170
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:558
 msgid "Playlists"
 msgstr "Seznami predvajanja"
 
@@ -3133,7 +3125,7 @@ msgstr "Ponovi predvajanje trenutne skladbe"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:79
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:80
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:83
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
 msgid "Shuffle"
 msgstr "Premešaj"
 
@@ -3210,7 +3202,7 @@ msgstr "Nov _pameten seznam predvajanja"
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:129
 #: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:84
 #: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:67
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:78
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:72
 msgid "Refresh"
 msgstr "Osveži"
@@ -3232,132 +3224,132 @@ msgstr "Ali zares želite izbrisati {0}?"
 msgid "Separate by Type"
 msgstr "Ločevanje po vrsti"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:70
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:110
 msgid "Select _All"
 msgstr "_Izberi vse"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:71
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:111
 msgid "Select all tracks"
 msgstr "Izbor vseh skladb"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:74
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:114
 msgid "Select _None"
 msgstr "_Brez izbora"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:75
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:115
 msgid "Unselect all tracks"
 msgstr "Preklic izbora vseh skladb"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:78
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:118
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:59
 msgid "_Edit Track Information"
-msgstr "_Uredi podatke skladbe"
+msgstr "_Uredi podatke o skladbi"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:79
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
 msgid "Edit information on selected tracks"
 msgstr "Urejanje podatkov o izbranih skladbah"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:82
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:122
 #: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:252
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:117
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:159
 msgid "Properties"
 msgstr "Lastnosti"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:83
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
 msgid "View information on selected tracks"
 msgstr "Ogled podrobnosti izbranih skladb"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
 msgid "Play the selected item"
 msgstr "Predvajaj izbran predmet"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:90
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:130
 msgid "Add _to Playlist"
 msgstr "Dodaj na _seznam predvajanja"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:91
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:131
 msgid "Append selected items to playlist or create new playlist from selection"
 msgstr "Pripenjanje izbranih predmetov seznamu predvajanja ali ustvarjanje novega"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:96
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:136
 msgid "Create new playlist from selected tracks"
 msgstr "Ustvari nov seznam predvajanja iz izbranih skladb"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:100
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:140
 msgid "_Remove"
 msgstr "_Odstrani"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:101
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:141
 msgid "Remove selected track(s) from this source"
 msgstr "Odstranitev izbran-e/ih skladb-e iz tega vira"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:104
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:144
 msgid "Remove From _Library"
 msgstr "Odstrani iz _knjižnice"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:105
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:145
 msgid "Remove selected track(s) from library"
 msgstr "Odstranitev izbran-e/ih skladb-e iz knjižnice"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:108
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:148
 msgid "_Open Containing Folder"
 msgstr "_Odpri vsebujočo mapo"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:109
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:149
 msgid "Open the folder that contains the selected item"
 msgstr "Odpre mapo, ki vsebuje izbran predmet"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:112
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:152
 msgid "_Delete From Drive"
 msgstr "_Izbriši s pogona"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:113
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:153
 msgid "Permanently delete selected item(s) from medium"
 msgstr "Trajen izbris izbran-e/ih skladb-e z medija"
 
 #. Translators: this is a verb (command), not a noun (things)
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:159
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:170
 #: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:112
 #, csharp-format
 msgid "_Search"
 msgstr "_Iskanje"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:120
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:160
 msgid "Search for items matching certain criteria"
 msgstr "Iskanje predmetov, ki se skladajo z določenimi pogoji"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:163
 msgid "By Matching _Album"
 msgstr "Po skladanju _albuma"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:124
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:164
 msgid "Search all songs of this album"
 msgstr "Iskanje skladb tega albuma"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:167
 msgid "By Matching A_rtist"
 msgstr "Po skladanju z _izvajalcem"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:128
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:168
 msgid "Search all songs of this artist"
 msgstr "Iskanje vseh skladb izvajalca"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:258
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:312
 #, csharp-format
 msgid "_Delete From \"{0}\""
 msgstr "_Izbriši iz \"{0}\""
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:464
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:532
 msgid "The folder could not be found."
 msgstr "Mape ni mogoče najti."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:465
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:533
 msgid "Please check that the track's location is accessible by the system."
 msgstr "Preverite, če lahko sistem dostopa do mesta skladbe."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:535
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:610
 #, csharp-format
 msgid "Are you sure you want to permanently delete this item?"
 msgid_plural "Are you sure you want to permanently delete the selected {0} items?"
@@ -3366,16 +3358,16 @@ msgstr[1] "Ali ste prepričani, da želite trajno izbrisati {0} izbran predmet?"
 msgstr[2] "Ali ste prepričani, da želite trajno izbrisati {0} izbrana predmeta?"
 msgstr[3] "Ali ste prepričani, da želite trajno izbrisati {0} izbrane predmete?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:539
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:614
 msgid "If you delete the selection, it will be permanently lost."
 msgstr "Izbris izbora bo trajen."
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:542
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:617
 #, csharp-format
 msgid "Remove selection from {0}?"
 msgstr "Odstranitev izbora iz {0}?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:545
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:620
 #, csharp-format
 msgid "Are you sure you want to remove the selected item from your {1}?"
 msgid_plural "Are you sure you want to remove the selected {0} items from your {1}?"
@@ -3662,48 +3654,48 @@ msgstr "Velikost datoteke:"
 msgid "bytes"
 msgstr "bajtov"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Editor"
 msgstr "Urejevalnik skladb"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:97
 msgid "Track Properties"
 msgstr "Lastnosti skladbe"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:147
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:149
 msgid "Show the previous track"
 msgstr "Pokaži predhodno skladbo"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:153
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:155
 msgid "Show the next track"
 msgstr "Pokaži naslednjo skladbo"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:183
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
 msgid "Title:"
 msgstr "Naslov:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:184
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:186
 msgid "Artist:"
 msgstr "Izvajalec:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:187
 msgid "Album:"
 msgstr "Album:"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:309
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:311
 msgid "Sync all field _values"
 msgstr "Usklajevanje vseh vrednosti _polj"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:314
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:316
 msgid "Apply the values of all common fields set for this track to all of the tracks selected in this editor"
 msgstr "Uveljavi vrednosti vseh nastavljenih skupnih polj te skladbe za vse skladbe izbrane v urejevalniku"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:413
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:416
 #, csharp-format
 msgid "<i>Editing {0} of {1} items</i>"
 msgstr "<i>Urejanje {0} od {1} predmetov</i>"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:675
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:678
 #, csharp-format
 msgid "Save the changes made to the open track?"
 msgid_plural "Save the changes made to {0} of {1} open tracks?"
@@ -3712,11 +3704,11 @@ msgstr[1] "Ali naj bodo spremembe {0} od {1} odprte skladbe shranjene?"
 msgstr[2] "Ali naj bodo spremembe {0} od {1} odprtih skladb shranjene?"
 msgstr[3] "Ali naj bodo spremembe {0} od {1} odprtih skladb shranjene?"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:692
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:695
 msgid "Close _without Saving"
 msgstr "Zapri _brez shranjevanja"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:729
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:732
 #, csharp-format
 msgid "If you don't save, changes from the last {0} will be permanently lost."
 msgstr "V primeru, da datoteke ne shranite, bo zadnjih {0} sprememb trajno izgubljenih."
@@ -3862,10 +3854,8 @@ msgid "Files"
 msgstr "Datoteke"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:63
-#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:82
-msgid "C_hoose Files"
-msgstr "I_zbor datotek"
+msgid "C_hoose Files..."
+msgstr "I_zbor datotek ..."
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:81
 msgid "_Files to import:"
@@ -3892,8 +3882,8 @@ msgid "Folders"
 msgstr "Mape"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:57
-msgid "C_hoose Folders"
-msgstr "I_zberi mape"
+msgid "C_hoose Folders..."
+msgstr "I_zbor map ..."
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:75
 msgid "_Folders to import:"
@@ -3921,14 +3911,10 @@ msgstr "Tega okna ne prikaži več"
 
 #: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:130
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:82
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
 msgid "_Import"
 msgstr "_Uvozi"
 
-#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs:69
-msgid "Videos From Photos Folder"
-msgstr "Videi iz mape fotografij"
-
 #: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileComboBox.cs:86
 msgid "No available profiles"
 msgstr "Profili niso na voljo"
@@ -4173,32 +4159,32 @@ msgstr "Izdelek"
 msgid "Vendor"
 msgstr "Ponudnik"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:280
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:284
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:142
 #, csharp-format
 msgid "Loading {0}"
 msgstr "Nalaganje {0}"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:37
 msgid "Yes"
 msgstr "Da"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:364
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:38
 msgid "No"
 msgstr "Ne"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:385
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
 #, csharp-format
 msgid "The {0} format is not supported by the device, and no converter was found to convert it"
 msgstr "Naprava ne podpira vrste zapisa {0}, in ni mogoče najti pretvornika za njeno pretvarjanje "
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:397
 msgid "File format conversion support is not available"
 msgstr "Podpora za pretvorbo vrste datoteke ni na voljo"
 
-#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:417
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:423
 msgid "Error converting file"
 msgstr "Napaka med pretvarjanjem datoteke"
 
@@ -4304,17 +4290,17 @@ msgstr "Uvozi kupljeno glasbo"
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:57
 #: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:64
 msgid "Disconnect"
-msgstr "Prekinitev povezave"
+msgstr "Odklopi"
 
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:108
 #, csharp-format
 msgid "Disconnecting {0}..."
-msgstr "Prekinjanje povezave z {0} ..."
+msgstr "Odklapljanje {0} ..."
 
 #: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:115
 #, csharp-format
 msgid "Could not disconnect {0}: {1}"
-msgstr "Povezave z {0} ni mogoče prekiniti: {1}"
+msgstr "{0} ni bilo mogoče odklopiti: {1}"
 
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:92
 #: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:95
@@ -4522,6 +4508,11 @@ msgstr "Datoteke Amazon MP3"
 msgid "Amazon MP3 Purchase"
 msgstr "Nakup Amazon MP3"
 
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:81
+msgid "C_hoose Files"
+msgstr "I_zbor datotek"
+
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSource.cs:42
 #: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:39
 msgid "Amazon MP3 Store"
@@ -4623,8 +4614,9 @@ msgid "Book Title"
 msgstr "Naslov knjige"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:68
-msgid "Audiobooks, etc"
-msgstr "Zvočne knjige, itn"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
+msgid "Audiobooks"
+msgstr "Zvočne knjige"
 
 #: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:75
 msgid "Search your audiobooks"
@@ -4652,7 +4644,7 @@ msgid "No Bookmark Set"
 msgstr "Ni nastavljenih zaznamkov"
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:76
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:55
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:56
 msgid "Audio CD"
 msgstr "Zvočni CD"
 
@@ -4715,7 +4707,7 @@ msgid "Error correction tries to work around problem areas on a disc, such as su
 msgstr "Popravljanje napak poskuša zaobiti območja diska, ki so poškodovana, vendar močno upočasni delovanje in uvoz glasbe."
 
 #: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:320
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:441
 msgid "Import CD"
 msgstr "Uvozi CD"
 
@@ -4731,44 +4723,44 @@ msgstr "Podvoji CD"
 msgid "Duplicate this audio CD"
 msgstr "Podvojitev tega zvočnega CD-ja"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:130
-msgid "Searching for CD metadata..."
-msgstr "Iskanje metapodatkov CD-ja ..."
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:131
+msgid "Searching for track information..."
+msgstr "Iskanje podrobnosti skladbe ..."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:163
-msgid "Could not fetch metadata for CD."
-msgstr "Metapodatkov CD-ja ni mogoče pridobiti. "
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:164
+msgid "Could not fetch track information"
+msgstr "Ni mogoče pridobiti podrobnosti sklade"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:191
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:192
 msgid "Automatic import off since this album is already in the Music Library."
 msgstr "Samodejno uvažanje je izključeno, ker je ta album že v glasbeni knjižnici."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:214
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:215
 msgid "Could not import CD"
 msgstr "CD-ja ni mogoče uvoziti"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:231
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:232
 msgid "Could not duplicate audio CD"
 msgstr "Zvočnega CD-ja ni mogoče podvojiti"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:363
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:364
 msgid "Ejecting audio CD..."
 msgstr "Izmetavanje zvočnega CD-ja ..."
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:381
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:382
 #, csharp-format
 msgid "Could not eject audio CD: {0}"
 msgstr "Zvočnega CD-ja ni mogoče izvreči: {0}"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:414
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
 msgid "Audio CD Preferences"
 msgstr "Nastavitve zvočnih CD-jev"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:416
 msgid "Eject Disc"
 msgstr "Izvrzi disk"
 
-#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:439
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
 #, csharp-format
 msgid "Import ‟{0}”"
 msgstr "Uvozi ‟{0}”"
@@ -4777,31 +4769,31 @@ msgstr "Uvozi ‟{0}”"
 msgid "Detecting BPM"
 msgstr "Zaznavanje BPM"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:91
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:92
 msgid "D_etect"
 msgstr "_Zaznaj"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:103
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:104
 msgid "T_ap"
 msgstr "_Udarjaj"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:111
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:112
 msgid "Have Banshee attempt to auto-detect the BPM of this song"
 msgstr "Naj Banshee poskusi samodejno zaznati UNM te skladbe"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:113
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:114
 msgid "Play this song"
 msgstr "Predvajaj to skladbo"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:116
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:117
 msgid "Tap this button to the beat to set the BPM for this song manually"
 msgstr "Udarjajte gumb po ritmu za ročno določitev UNM skladbe"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:147
 msgid "_Automatically detect BPM for all songs"
 msgstr "_Samodejno zaznaj UNM za vse skladbe"
 
-#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:149
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
 msgid "Detect beats per minute (BPM) for all songs that don't already have a value set"
 msgstr "Zaznavanje udarcev na minuto (UNM) za vse skladbe brez nastavljene vrednosti"
 
@@ -4975,15 +4967,15 @@ msgstr "Preklicevanje prejemanj"
 msgid "Waiting for downloads to terminate..."
 msgstr "Čakanje na konec prejemanj ..."
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:60
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:59
 msgid "Import eMusic Downloads to Library"
 msgstr "Uvozi prejeme eMusic v knjižnico"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:62
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:61
 msgid "eMusic Files"
 msgstr "Datoteke eMusic"
 
-#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:78
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:77
 msgid "eMusic Tracks"
 msgstr "Skladbe eMusic"
 
@@ -4993,7 +4985,7 @@ msgid "File System Queue"
 msgstr "Čakalna vrsta datotečnega sistema"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:72
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:93
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
 msgid "Clear"
 msgstr "Počisti"
 
@@ -5002,7 +4994,7 @@ msgid "Remove all tracks from the file system queue"
 msgstr "Odstranitev vseh skladb iz vrste datotečnega sistema"
 
 #: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:79
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:102
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
 msgid "Clear on Quit"
 msgstr "Počisti ob končanju"
 
@@ -5072,18 +5064,33 @@ msgstr ", {0}"
 msgid "Fix?"
 msgstr "Ali naj bo popravljena?"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:48
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:51
 msgid "View Item Details"
 msgstr "Ogled podrobnosti predmeta"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:57
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:60
 msgid "Open Webpage"
 msgstr "Odpri spletno stran"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:76
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:79
 msgid "Visit Archive.org"
 msgstr "Obišči archive.org"
 
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:83
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
+msgid "Subscribe"
+msgstr "Naroči se"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:84
+msgid "Subscribe to this search as a podcast"
+msgstr "Naročite se na to iskanje kot na podcast"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:88
+#, csharp-format
+msgid "Internet Archive: {0}"
+msgstr "Internetni arhiv: {0}"
+
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:78
 msgid "Close Item"
 msgstr "Zapri predmet"
@@ -5109,7 +5116,7 @@ msgstr "Napaka med pridobivanjem podrobnosti iz spletnega arhiva"
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:205
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:130
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:66
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:138
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:89
 msgid "Description"
@@ -5319,10 +5326,6 @@ msgstr "Spletni arhiv, gradi digitalno knjižnico spletnih strani in drugih kult
 msgid "Visit the Internet Archive online at archive.org"
 msgstr "Obišči Internet Archive na archive.org"
 
-#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
-msgid "Audiobooks"
-msgstr "Zvočne knjige"
-
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:308
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:78
 msgid "Movies"
@@ -5380,7 +5383,7 @@ msgstr "Pridobi več"
 #: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:128
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:61
 #: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:98
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:137
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:135
 msgid "Creator"
 msgstr "Ustvarjalec"
 
@@ -5606,11 +5609,11 @@ msgstr "Išče po vaših postajah"
 msgid "Edit Station"
 msgstr "Uredi postajo"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:134
 msgid "Station"
 msgstr "Postaja"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:157
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:155
 #, csharp-format
 msgid "{0} station"
 msgid_plural "{0} stations"
@@ -5619,15 +5622,15 @@ msgstr[1] "{0} postaja"
 msgstr[2] "{0} postaji"
 msgstr[3] "{0} postaje"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:243
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:241
 msgid "Please provide a valid station URI"
 msgstr "Vnesti je treba veljaven URI postaje"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:256
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:254
 msgid "Please provide a station genre"
 msgstr "Vnesti je treba zvrst postaje"
 
-#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:264
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:262
 msgid "Please provide a station title"
 msgstr "Vnesti je treba naslov postaje"
 
@@ -6182,22 +6185,22 @@ msgstr "Poenostavi"
 msgid "Simplify the Now Playing interface by hiding the source list and more"
 msgstr "Poenostavi vmesnik sedaj se predvaja s skrivanjem seznama virov in več"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:144
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:143
 #, csharp-format
 msgid "Unable to import track: {0}"
 msgstr "Skladbe ni mogoče uvoziti: {0}"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:178
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:177
 msgid "Importing from Amarok failed"
 msgstr "Uvoz iz Amaroka je spodletel"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:189
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:188
 msgid "Amarok"
 msgstr "Amarok"
 
 #. TODO add Help button and dialog/tooltip
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:68
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:383
 msgid "iTunes Importer"
 msgstr "iTunes uvoznik"
 
@@ -6214,49 +6217,49 @@ msgid "Import playlists"
 msgstr "Uvoz seznamov predvajanja"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:120
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
 #, csharp-format
 msgid "Locate your \"{0}\" file..."
 msgstr "Najdite svojo datoteko \"{0}\" ..."
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:138
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
 #, csharp-format
 msgid "Locate \"{0}\""
 msgstr "Najdi \"{0}\""
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:167
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:389
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
 msgid "Locate iTunes Music Directory"
 msgstr "Najdi mapo glasbe iTunes"
 
 #: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:196
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:391
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:390
 #, csharp-format
 msgid "The iTunes library refers to your music directory as \"{0}\" but Banshee was not able to infer the location of this directory. Please locate it."
 msgstr "Knjižnica iTunes mapo z glasbo imenuje \"{0}\", vendar mesta te mape ni mogoče najti. Določiti jo je treba ročno."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:75
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:393
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:74
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:392
 msgid "iTunes Media Player"
 msgstr "iTunes predvajalnik"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:135
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:395
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:134
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:394
 msgid "Banshee is not familiar with this version of the iTunes library format. Importing may or may not work as expected, or at all. Would you like to attempt to import anyway?"
 msgstr "Banshee ne pozna te različice zapisa knjižnice iTunes. Uvažanje morda ne bo delovalo po pričakovanjih ali pa sploh ne. Ali želite vseeno poskusiti z uvozom?"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:440
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:236
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:397
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:439
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:235
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:396
 msgid "Unable to import song."
 msgstr "Skladbe ni mogoče uvoziti."
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:370
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:369
 msgid "Rhythmbox Music Player"
 msgstr "Predvajalnik glasbe Rhythmbox"
 
-#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
 msgid "Import _playlists"
 msgstr "Uvozi sezname _predvajanja"
 
@@ -6268,67 +6271,67 @@ msgstr "_Zapolni"
 msgid "f_rom"
 msgstr "o_d"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:51
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
 msgid "Add to Play Queue"
 msgstr "Dodaj v čakalno vrsto predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:53
 msgid "Append selected songs to the play queue"
 msgstr "Pripenjanje izbrane skladbe čakalni vrsti predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:56
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
 msgid "Play After"
 msgstr "Predvajaj za"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:58
 msgid "Add selected songs after the currently playing track, album, or artist"
 msgstr "Doda izbrane skladbe za trenutno predvajajočo se skladbo, album ali izvajalca"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:61
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
 msgid "Current Track"
 msgstr "Trenutna skladba"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:63
 msgid "Add selected songs to the play queue after the currently playing song"
 msgstr "Doda izbrane skladbe v čakalno vrsto predvajanja za trenutno predvajajočo se skladbo"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:66
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
 msgid "Current Album"
 msgstr "Trenutni album"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:68
 msgid "Add selected songs to the play queue after the currently playing album"
 msgstr "Doda izbrane skladbe v čakalno vrsto predvajanja za trenutno predvajajoči se abum"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:71
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
 msgid "Current Artist"
 msgstr "Trenutni izvajale"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:73
 msgid "Add selected songs to the play queue after the currently playing artist"
 msgstr "Doda izbrane skladbe v čakalno vrsto predvajanja za trenutno predvajajočega izvajalca"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:80
 msgid "Refresh random tracks in the play queue"
 msgstr "Osvežitev naključnih skladb v čakalni vrsti predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:85
 msgid "Randomize the playback order of items in the play queue"
 msgstr "Naključno razporedi vrstni red predvajanja predmetov v čakalni vrsti predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:88
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
 msgid "Add More"
 msgstr "Dodaj več"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:90
 msgid "Add more random tracks to the play queue"
 msgstr "Dodajanje več naključnih skladb čakalni vrsti predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:95
 msgid "Remove all tracks from the play queue"
 msgstr "Odstrani vse skladbe s čakalne vrste predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:104
 msgid "Clear the play queue when quitting"
 msgstr "Počisti čakalno vrsto predvajanja ob končanju"
 
@@ -6336,11 +6339,11 @@ msgstr "Počisti čakalno vrsto predvajanja ob končanju"
 msgid "Remove From Play Queue"
 msgstr "Odstrani s čakalne vrste predvajanja"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:952
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:959
 msgid "Number of _played songs to show"
 msgstr "Število _predvajanih skladb za prikaz"
 
-#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:958
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:965
 msgid "Number of _upcoming songs to show"
 msgstr "Število _prihajajočih skladb za prikaz"
 
@@ -6565,11 +6568,6 @@ msgstr "Opis ni na voljo"
 msgid "Podcast:"
 msgstr "Podcast:"
 
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
-#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
-msgid "Subscribe"
-msgstr "Naroči se"
-
 #: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:92
 msgid "Subscribe to New Podcast"
 msgstr "Naročilo na nov podcast"
@@ -6921,6 +6919,18 @@ msgstr "Povezano z Last.fm "
 msgid "Unknown Podcast"
 msgstr "Neznan Podcast"
 
+#~ msgid "Home Folder"
+#~ msgstr "Domača mapa"
+#~ msgid "Videos From Photos Folder"
+#~ msgstr "Videi iz mape fotografij"
+#~ msgid "Audiobooks, etc"
+#~ msgstr "Zvočne knjige, itn"
+#~ msgid "_Web Resources"
+#~ msgstr "_Spletni viri"
+#~ msgid "Banshee _User Guide (Wiki)"
+#~ msgstr "Banshee _uporabniški vodič (Wiki)"
+#~ msgid "Learn about how to use Banshee"
+#~ msgstr "Naučite se kako uporabljati Banshee"
 #~ msgid "Manage _Extensions"
 #~ msgstr "Upravljaj _razširitve"
 #~ msgid "Manage extensions to add new features to Banshee"
diff --git a/po/th.po b/po/th.po
index 1382aba..12839e2 100644
--- a/po/th.po
+++ b/po/th.po
@@ -3,1696 +3,4887 @@
 # This file is distributed under the same license as the Banshee package.
 # Isriya Paireepairit <markpeak at gmail.com>, 2006.
 # Theppitak Karoonboonyanan <thep at linux.thai.net>, 2006.
-# 
+# Sira Nokyoongtong <gumaraa at gmail.com>, 2010.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: Banshee VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-08-04 12:29+0700\n"
-"PO-Revision-Date: 2006-08-04 12:38+0700\n"
-"Last-Translator: Theppitak Karoonboonyanan <thep at linux.thai.net>\n"
-"Language-Team: Thai <l10n at opentle.org>\n"
+"Project-Id-Version: Banshee\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=banshee&component=general\n"
+"POT-Creation-Date: 2010-11-07 23:53+0000\n"
+"PO-Revision-Date: 2010-11-15 17:31+0700\n"
+"Last-Translator: Sira Nokyoongtong <gumaraa at gmail.com>\n"
+"Language-Team: Thai <thai-l10n at googlegroups.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: ../data/banshee.desktop.in.in.h:1 ../data/banshee.glade.h:12
-#: ../src/Banshee.Base/BansheeBranding.cs:71
-msgid "Banshee Music Player"
-msgstr "Banshee: โปรแกรมเล่นเพลง"
+#. ../src/Backends/Banshee.Gio/Banshee.Gio.addin.xml
+#: ../data/addin-xml-strings.cs:8
+msgid "GIO IO and Hardware backends"
+msgstr ""
 
-#: ../data/banshee.desktop.in.in.h:2
-msgid "Music Player"
-msgstr "โปรแกรมเล่นเพลง"
+#. ../src/Backends/Banshee.Gnome/Banshee.Gnome.addin.xml
+#: ../data/addin-xml-strings.cs:11
+msgid ""
+"Backend providers for the GNOME platform. Includes GConf support and general "
+"GNOME integration."
+msgstr ""
 
-#: ../data/banshee.glade.h:1
-msgid "<b>Advanced Properties</b>"
-msgstr "<b>คุณสมบัติเพิ่มเติม</b>"
+#. ../src/Backends/Banshee.GStreamer/Banshee.GStreamer.addin.xml
+#. ../src/Backends/Banshee.GStreamerSharp/Banshee.GStreamerSharp.addin.xml
+#: ../data/addin-xml-strings.cs:14 ../data/addin-xml-strings.cs:17
+msgid ""
+"GStreamer multimedia services including playback, CD ripping, and "
+"transcoding."
+msgstr ""
 
-#: ../data/banshee.glade.h:2
-msgid "<b>CD Importing</b>"
-msgstr "<b>การแปลงข้อมูลเข้าจากซีดี</b>"
+#. ../src/Backends/Banshee.Hal/Banshee.Hal.addin.xml
+#: ../data/addin-xml-strings.cs:20
+msgid "Provides hardware support through HAL."
+msgstr ""
 
-#: ../data/banshee.glade.h:3
-msgid "<b>Digital Audio Player</b>"
-msgstr "<b>ส่วนเล่นเสียงดิจิทัล</b>"
+#. ../src/Backends/Banshee.NowPlaying.X11/Banshee.NowPlaying.X11.addin.xml
+#: ../data/addin-xml-strings.cs:23
+msgid ""
+"Provides an X11 backend for video support, which enables proper fullscreen "
+"support."
+msgstr ""
 
-#: ../data/banshee.glade.h:4
-msgid "<b>Loading...</b>"
-msgstr "<b>กำลังเรียก...</b>"
+#. ../src/Backends/Banshee.Osx/Banshee.Osx.addin.xml
+#: ../data/addin-xml-strings.cs:26
+msgid ""
+"Backend providers for the OSX platform. Includes general OSX integration."
+msgstr ""
 
-#: ../data/banshee.glade.h:5
-msgid "<b>Music Folder</b>"
-msgstr "<b>โฟลเดอร์เก็บเพลง</b>"
+#. ../src/Backends/Banshee.Unix/Banshee.Unix.addin.xml
+#: ../data/addin-xml-strings.cs:29
+msgid "Provides POSIX/UNIX support, including IO."
+msgstr ""
 
-#: ../data/banshee.glade.h:6
-msgid "<b>Session Information</b>"
-msgstr "<b>ข้อมูลเซสชัน</b>"
+#. ../src/Core/Banshee.Core/Banshee.Core.addin.xml
+#: ../data/addin-xml-strings.cs:32
+msgid "Provides low level non-GUI utilities."
+msgstr ""
 
-#: ../data/banshee.glade.h:7
-msgid "<b>Write Options</b>"
-msgstr "<b>ตัวเลือกการเขียน</b>"
+#. ../src/Core/Banshee.Services/Banshee.Services.addin.xml
+#: ../data/addin-xml-strings.cs:35
+msgid "Provides non-GUI utilities and services."
+msgstr ""
 
-#: ../data/banshee.glade.h:8
-msgid "<big><b>Editing Song</b></big>"
-msgstr "<big><b>แก้ไขข้อมูลเพลง</b></big>"
+#. ../src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml
+#: ../data/addin-xml-strings.cs:38
+msgid "Provides GUI utilities and services."
+msgstr ""
 
-#: ../data/banshee.glade.h:9
-msgid "<big><b>Import Music to Library</b></big>"
-msgstr "<big><b>นำเพลงเข้าสู่ไลบรารี</b></big>"
+#. ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice.addin.xml
+#: ../data/addin-xml-strings.cs:41
+msgid "Apple device Support"
+msgstr "การรองรับอุปกรณ์ Apple"
+
+#: ../data/addin-xml-strings.cs:42
+msgid "Support for most iPod/iPhone/iPad devices."
+msgstr "การรองรับอุปกรณ์ iPod/iPhone/iPad ส่วนใหญ่"
+
+#: ../data/addin-xml-strings.cs:43 ../data/addin-xml-strings.cs:48
+#: ../data/addin-xml-strings.cs:53 ../data/addin-xml-strings.cs:58
+#: ../data/addin-xml-strings.cs:63
+msgid "Device Support"
+msgstr "การรองรับอุปกรณ์"
+
+#. ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod.addin.xml
+#: ../data/addin-xml-strings.cs:46
+msgid "iPod Support"
+msgstr "การรองรับ iPod"
+
+#: ../data/addin-xml-strings.cs:47
+msgid "Support for most iPod devices."
+msgstr "การรองรับอุปกรณ์ iPod ส่วนใหญ่"
+
+#. ../src/Dap/Banshee.Dap.Karma/Banshee.Dap.Karma.addin.xml
+#: ../data/addin-xml-strings.cs:51
+msgid "Karma Support"
+msgstr ""
 
-#: ../data/banshee.glade.h:10
-msgid "<small><i><Unknown></i></small>"
-msgstr "<small><i><ไม่มีข้อมูล></i></small>"
+#: ../data/addin-xml-strings.cs:52
+msgid "Support for Rio Karma devices."
+msgstr ""
 
-#: ../data/banshee.glade.h:11
-msgid "Albu_m"
-msgstr "_อัลบั้ม"
+#. ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage.addin.xml
+#: ../data/addin-xml-strings.cs:56
+msgid "Mass Storage Media Player Support"
+msgstr ""
 
-#: ../data/banshee.glade.h:13
-msgid "Bit Rate:"
-msgstr "บิตเรต:"
+#: ../data/addin-xml-strings.cs:57
+msgid ""
+"Support for USB-drive based devices, including many iAudio devices and "
+"Android, Pre, and Galaxy phones."
+msgstr ""
 
-#: ../data/banshee.glade.h:14
-msgid "Channels:"
-msgstr "ช่องสัญญาณ:"
+#. ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp.addin.xml
+#: ../data/addin-xml-strings.cs:61
+msgid "MTP Media Player Support"
+msgstr ""
 
-#: ../data/banshee.glade.h:15
-msgid "Choose an import source:"
-msgstr "เลือกแหล่งของเพลงที่จะนำเข้า:"
+#: ../data/addin-xml-strings.cs:62
+msgid "Support for MTP devices, including many Creative Zen devices."
+msgstr ""
 
-#: ../data/banshee.glade.h:16
-msgid "Conversion Format:"
-msgstr "ฟอร์แมตที่แปลง:"
+#. ../src/Dap/Banshee.Dap/Banshee.Dap.addin.xml
+#: ../data/addin-xml-strings.cs:66
+#, fuzzy
+#| msgid "<b>Digital Audio Player</b>"
+msgid "Digital Media Player Support"
+msgstr "<b>ส่วนเล่นเสียงดิจิทัล</b>"
 
-#: ../data/banshee.glade.h:17
-msgid "Copy files to music folder when importing"
-msgstr "คัดลอกแฟ้มไปยังโฟลเดอร์เพลงเมื่อนำเข้า"
+#: ../data/addin-xml-strings.cs:67
+msgid "Provides general support for many kinds of media player devices."
+msgstr ""
 
-#: ../data/banshee.glade.h:18
-msgid "Create a new preset"
-msgstr "เพิ่มค่าตั้งสำเร็จ"
+#. ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store.addin.xml
+#: ../data/addin-xml-strings.cs:70
+msgid "Amazon MP3 Store Source"
+msgstr ""
 
-#: ../data/banshee.glade.h:19
-msgid "Delete the active preset"
-msgstr "ลบค่าตั้งสำเร็จที่ใช้งานอยู่"
+#: ../data/addin-xml-strings.cs:71
+msgid "Browse, search, and purchase music from the Amazon MP3 store"
+msgstr ""
 
-#: ../data/banshee.glade.h:20
-msgid "Disc Options"
-msgstr "ตัวเลือกสำหรับแผ่น"
+#: ../data/addin-xml-strings.cs:72 ../data/addin-xml-strings.cs:77
+#: ../data/addin-xml-strings.cs:112 ../data/addin-xml-strings.cs:127
+#: ../data/addin-xml-strings.cs:137 ../data/addin-xml-strings.cs:142
+#: ../data/addin-xml-strings.cs:161
+msgid "Online Sources"
+msgstr "แหล่งออนไลน์"
 
-#: ../data/banshee.glade.h:21
-msgid "Disc format:"
-msgstr "รูปแบบของแผ่น:"
+#. ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3.addin.xml
+#: ../data/addin-xml-strings.cs:75
+msgid "Amazon MP3 Import"
+msgstr "นำเข้า MP3 จาก Amazon"
 
-#: ../data/banshee.glade.h:22
-msgid "Disc name:"
-msgstr "ชื่อแผ่น:"
+#: ../data/addin-xml-strings.cs:76
+msgid "Download and import music purchased from Amazon.com"
+msgstr ""
 
-#: ../data/banshee.glade.h:23
-msgid "Disk Usage:"
-msgstr "เนื้อที่ดิสก์ที่ใช้:"
+#. ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook.addin.xml
+#: ../data/addin-xml-strings.cs:80
+#, fuzzy
+#| msgid "Music Library"
+msgid "Audiobooks Library"
+msgstr "ไลบรารีเพลง"
 
-#: ../data/banshee.glade.h:24
-msgid "Do not show this dialog again"
-msgstr "ไม่ต้องแสดงกล่องโต้ตอบนี้อีก"
+#: ../data/addin-xml-strings.cs:81
+msgid "Organize audiobooks, lectures, etc."
+msgstr ""
 
-#: ../data/banshee.glade.h:25 ../src/TrackProperties.cs:240
-msgid "Editing Song"
-msgstr "แก้ไขข้อมูลเพลง"
+#: ../data/addin-xml-strings.cs:82 ../data/addin-xml-strings.cs:87
+#: ../data/addin-xml-strings.cs:117 ../data/addin-xml-strings.cs:132
+#: ../data/addin-xml-strings.cs:190 ../data/addin-xml-strings.cs:195
+#, fuzzy
+#| msgid "Source"
+msgid "Core"
+msgstr "แหล่งเพลง"
 
-#: ../data/banshee.glade.h:26
-msgid "Eject disc after writing"
-msgstr "ดันแผ่นออกหลังจากเขียนเสร็จ"
+#. ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd.addin.xml
+#: ../data/addin-xml-strings.cs:85
+#, fuzzy
+#| msgid "Audio CD"
+msgid "Audio CD Support"
+msgstr "ซีดีเพลง"
 
-#: ../data/banshee.glade.h:27 ../src/Banshee.Base/Plugins/PluginDialog.cs:70
-msgid "Enabled"
-msgstr "เปิดใช้งาน"
+#: ../data/addin-xml-strings.cs:86
+msgid "Listen to and rip Audio CDs."
+msgstr ""
 
-#: ../data/banshee.glade.h:28
-msgid "Encoding:"
-msgstr "การเข้ารหัส:"
+#. ../src/Extensions/Banshee.BooScript/Banshee.BooScript.addin.xml
+#: ../data/addin-xml-strings.cs:90
+msgid "Boo Scripting"
+msgstr ""
 
-#: ../data/banshee.glade.h:29
-msgid "Enter the address of the file you would like to open:"
-msgstr "ป้อนที่อยู่ของแฟ้มที่คุณต้องการเปิด:"
+#: ../data/addin-xml-strings.cs:91
+msgid "Customize and extend Banshee with Boo-language scripts."
+msgstr ""
 
-#: ../data/banshee.glade.h:30 ../src/Banshee.Base/ActionManager.cs:140
-msgid "Equalizer"
-msgstr "ที่ปรับคลื่นเสียง"
+#: ../data/addin-xml-strings.cs:92 ../data/addin-xml-strings.cs:97
+#: ../data/addin-xml-strings.cs:102 ../data/addin-xml-strings.cs:107
+#: ../data/addin-xml-strings.cs:122 ../data/addin-xml-strings.cs:147
+#: ../data/addin-xml-strings.cs:156 ../data/addin-xml-strings.cs:166
+#: ../data/addin-xml-strings.cs:171 ../data/addin-xml-strings.cs:176
+#: ../data/addin-xml-strings.cs:185 ../data/addin-xml-strings.cs:214
+msgid "Utilities"
+msgstr ""
 
-#: ../data/banshee.glade.h:31
-msgid "Error"
-msgstr "ผิดพลาด"
+#. ../src/Extensions/Banshee.Bpm/Banshee.Bpm.addin.xml
+#: ../data/addin-xml-strings.cs:95
+msgid "BPM Detection"
+msgstr ""
 
-#: ../data/banshee.glade.h:32
-msgid "File Name:"
-msgstr "ชื่อแฟ้ม:"
+#: ../data/addin-xml-strings.cs:96
+msgid "Detect the beats per minute (BPM) of your music."
+msgstr ""
 
-#: ../data/banshee.glade.h:33
-msgid "Import Music Source"
-msgstr "นำเข้าเพลง"
+#. ../src/Extensions/Banshee.CoverArt/Banshee.CoverArt.addin.xml
+#: ../data/addin-xml-strings.cs:100
+#, fuzzy
+#| msgid "Metadata and Cover Art Searching"
+msgid "Cover Art Fetching"
+msgstr "ค้นหาข้อมูลเพลงและภาพปกอัลบั้ม"
 
-#: ../data/banshee.glade.h:34
-msgid "Import Music to Library"
-msgstr "นำเพลงเข้าสู่ไลบรารี"
+#: ../data/addin-xml-strings.cs:101
+msgid "Fetch cover art for all items in your library."
+msgstr ""
 
-#: ../data/banshee.glade.h:35
-msgid "Imported On:"
-msgstr "นำเข้าเมื่อ:"
+#. ../src/Extensions/Banshee.Daap/Banshee.Daap.addin.xml
+#: ../data/addin-xml-strings.cs:105
+#, fuzzy
+#| msgid "Music Sharing"
+msgid "DAAP Sharing"
+msgstr "การแบ่งปันเพลง"
 
-#: ../data/banshee.glade.h:36
-msgid "Last Played On:"
-msgstr "เล่นครั้งล่าสุด:"
+#: ../data/addin-xml-strings.cs:106
+msgid "Browse and listen to music shared over your local network."
+msgstr ""
 
-#: ../data/banshee.glade.h:37
-msgid "Mime Type:"
-msgstr "ชนิดแฟ้ม:"
+#. ../src/Extensions/Banshee.Emusic/Banshee.Emusic.addin.xml
+#: ../data/addin-xml-strings.cs:110
+#, fuzzy
+#| msgid "Automatic Import"
+msgid "eMusic Import"
+msgstr "นำเข้าอัตโนมัติ"
 
-#: ../data/banshee.glade.h:38
-msgid "Number of Plays:"
-msgstr "จำนวนครั้งที่เล่น"
+#: ../data/addin-xml-strings.cs:111
+msgid "Download and import music purchased from eMusic"
+msgstr ""
 
-#: ../data/banshee.glade.h:39 ../src/Banshee.Base/Gui/OpenLocationDialog.cs:97
-msgid "Open Location"
-msgstr "เปิดตำแหน่งแฟ้ม"
+#. ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue.addin.xml
+#: ../data/addin-xml-strings.cs:115
+msgid "File System Preview Queue"
+msgstr ""
 
-#: ../data/banshee.glade.h:40
-msgid "Output Format:"
-msgstr "ฟอร์แมตผลลัพธ์:"
+#: ../data/addin-xml-strings.cs:116
+msgid "Preview files without importing to your library."
+msgstr ""
 
-#: ../data/banshee.glade.h:41
-msgid "Preferences"
-msgstr "ปรับแต่ง"
+#. ../src/Extensions/Banshee.Fixup/Banshee.Fixup.addin.xml
+#: ../data/addin-xml-strings.cs:120
+msgid "Metadata Fixup"
+msgstr ""
 
-#: ../data/banshee.glade.h:42
-msgid "Reset"
-msgstr "คืนค่าเดิม"
+#: ../data/addin-xml-strings.cs:121
+msgid "Fix broken and missing metadata using bulk operations"
+msgstr ""
 
-#: ../data/banshee.glade.h:43
-msgid "Sample Rate:"
-msgstr "อัตราการเก็บข้อมูล:"
+#. ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive.addin.xml
+#: ../data/addin-xml-strings.cs:125
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeSource.cs:58
+msgid "Internet Archive"
+msgstr ""
 
-#: ../data/banshee.glade.h:44
-msgid "Seek to Position"
-msgstr "ข้ามไปยังตำแหน่ง"
+#: ../data/addin-xml-strings.cs:126
+msgid "Browse and search the Internet Archive's vast media collection."
+msgstr ""
 
-#: ../data/banshee.glade.h:45
-msgid "Track Duration:"
-msgstr "ความยาวเพลง:"
+#. ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio.addin.xml
+#: ../data/addin-xml-strings.cs:130
+msgid "Internet Radio"
+msgstr ""
 
-#: ../data/banshee.glade.h:46
-msgid "Track _Count"
-msgstr "_จำนวนเพลง"
+#: ../data/addin-xml-strings.cs:131
+msgid "Listen to and organize Internet Radio stations."
+msgstr ""
 
-#: ../data/banshee.glade.h:47
-msgid "Track _Number"
-msgstr "_ลำดับเพลง"
+#. ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.addin.xml
+#: ../data/addin-xml-strings.cs:135
+msgid "Last.fm Scrobbling"
+msgstr ""
 
-#: ../data/banshee.glade.h:48
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:64
-#: ../src/Banshee.Base/Dap/Dap.cs:605 ../src/TrackProperties.cs:236
-#: ../src/TrackProperties.cs:260 ../src/TrackProperties.cs:261
-#: ../src/TrackProperties.cs:262 ../src/TrackProperties.cs:263
-#: ../src/TrackProperties.cs:264 ../src/TrackProperties.cs:265
-msgid "Unknown"
-msgstr "ไม่มีข้อมูล"
+#: ../data/addin-xml-strings.cs:136
+msgid "Last.fm scrobbling and context pane recommendations."
+msgstr ""
+
+#. ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming.addin.xml
+#: ../data/addin-xml-strings.cs:140
+#, fuzzy
+#| msgid "Last.fm Password"
+msgid "Last.fm Radio"
+msgstr "รหัสผ่าน Last.fm"
+
+#: ../data/addin-xml-strings.cs:141
+msgid "Last.fm streaming radio for paid subscribers."
+msgstr ""
+
+#. ../src/Extensions/Banshee.LibraryWatcher/Banshee.LibraryWatcher.addin.xml
+#: ../data/addin-xml-strings.cs:145
+msgid "Library Watcher"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:146
+msgid "Automatically update music and video libraries"
+msgstr ""
 
-#: ../data/banshee.glade.h:49
-msgid "VBR:"
-msgstr "VBR:"
+#. ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo.addin.xml
+#: ../data/addin-xml-strings.cs:150
+msgid "MeeGo Support"
+msgstr "การรองรับ MeeGo"
 
-#: ../data/banshee.glade.h:50
-msgid "Write disc to:"
-msgstr "เขียนลงแผ่นใน:"
+#: ../data/addin-xml-strings.cs:151
+msgid "Provides MeeGo integration, including a custom media panel."
+msgstr "เชื่อมรวมกับ MeeGo พร้อมพาเนลควบคุมสื่อที่กำหนดเอง"
 
-#: ../data/banshee.glade.h:51
-msgid "Write speed:"
-msgstr "ความเร็วการเขียน:"
+#. ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode.addin.xml
+#: ../data/addin-xml-strings.cs:154
+msgid "Mini Mode"
+msgstr ""
 
-#: ../data/banshee.glade.h:52
+#: ../data/addin-xml-strings.cs:155
 msgid ""
-"Your music library is empty. You may import new music into your library now, "
-"or choose to do so later."
+"Control Banshee through a small window with only playback controls and track "
+"information."
 msgstr ""
-"คุณไม่มีเพลงในไลบรารี คุณอาจนำเข้าเพลงใหม่ในไลบรารีตอนนี้หรือเลือกที่จะนำเข้าในภายหลังก็ได้"
 
-#: ../data/banshee.glade.h:53
-msgid "_Artist"
-msgstr "_ศิลปิน"
+#. ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide.addin.xml
+#: ../data/addin-xml-strings.cs:159
+msgid "Miro Guide Podcast Directory"
+msgstr ""
 
-#: ../data/banshee.glade.h:54
-msgid "_Genre"
-msgstr "_ประเภท"
+#: ../data/addin-xml-strings.cs:160
+msgid "Browse and subscribe to thousands of audio and video podcasts."
+msgstr ""
 
-#: ../data/banshee.glade.h:55
-msgid "_Search:"
-msgstr "_ค้นหา:"
+#. ../src/Extensions/Banshee.Mpris/Banshee.Mpris.addin.xml
+#: ../data/addin-xml-strings.cs:164
+msgid "MPRIS D-Bus interface"
+msgstr ""
 
-#: ../data/banshee.glade.h:56
-msgid "_Title"
-msgstr "_ชื่อ"
+#: ../data/addin-xml-strings.cs:165
+msgid "Control Banshee using the MPRIS D-Bus interface."
+msgstr ""
 
-#: ../data/banshee.glade.h:57
-msgid "_Write"
-msgstr "เ_ขียน"
+#. ../src/Extensions/Banshee.MultimediaKeys/Banshee.MultimediaKeys.addin.xml
+#: ../data/addin-xml-strings.cs:169
+#, fuzzy
+#| msgid "Multimedia Keyboard Shortcuts"
+msgid "Multimedia Keys"
+msgstr "ชุดปุ่มลัดของแป้นพิมพ์สื่อผสม"
 
-#: ../data/banshee.schemas.in.h:1
-msgid ""
-"Can be either \"systemio\" (.NET System.IO), \"unix\" (Native Unix), or "
-"\"gnomevfs\" (GNOME VFS); takes effect on Banshee start (restart necessary)"
+#: ../data/addin-xml-strings.cs:170
+msgid "Control playback via the multimedia keys on your keyboard."
 msgstr ""
-"ค่าที่เป็นไปได้คือ \"systemio\" (System.IO ของ .NET), \"unix\" (ยูนิกซ์แท้), หรือ "
-"\"gnomevfs\" (GNOME VFS) จะมีผลเมื่อ Banshee เริ่มทำงาน (ต้องเข้าโปรแกรมใหม่)"
 
-#: ../data/banshee.schemas.in.h:2
-msgid "Copy and rename music to banshee music library directory when importing"
-msgstr "คัดลอกและเปลี่ยนชื่อแฟ้มเพลงเข้ามาในโฟลเดอร์ไลบรารีเพลงของ Banshee ขณะนำเข้า"
+#. ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea.addin.xml
+#: ../data/addin-xml-strings.cs:174
+msgid "Notification Area Icon"
+msgstr "ไอคอนพื้นที่แจ้งเตือน"
 
-#: ../data/banshee.schemas.in.h:3
-msgid "Copy music on import"
-msgstr "คัดลอกแฟ้มเพลงขณะนำเข้า"
+#: ../data/addin-xml-strings.cs:175
+msgid "Display an icon in the notification area for controlling Banshee."
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:4
-msgid "Enable Special Keys"
-msgstr "เปิดใช้ปุ่มแป้นพิมพ์พิเศษ"
+#. ../src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying.addin.xml
+#: ../data/addin-xml-strings.cs:179
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/MediaPanelContents.cs:164
+#: ../src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingSource.cs:50
+#, fuzzy
+#| msgid "New Playlist"
+msgid "Now Playing"
+msgstr "สร้างรายการเล่นใหม่"
 
-#: ../data/banshee.schemas.in.h:5
+#: ../data/addin-xml-strings.cs:180
 msgid ""
-"Enabled Special Keys (Multimedia Keys) support for Play/Pause/Next/Previous; "
-"works with mappings set through Gnome Shortcuts capplet"
+"Provides a source that displays embedded video and provides fullscreen video "
+"playback and controls."
+msgstr ""
+
+#. ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration.addin.xml
+#: ../data/addin-xml-strings.cs:183
+msgid "Importers for Amarok, Rhythmbox and iTunes"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:184
+msgid "Import your library from Amarok, Rhythmbox or iTunes."
+msgstr ""
+
+#. ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue.addin.xml
+#: ../data/addin-xml-strings.cs:188
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:58
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:79
+#, fuzzy
+#| msgid "Local Queue"
+msgid "Play Queue"
+msgstr "คิวในเครื่อง"
+
+#: ../data/addin-xml-strings.cs:189
+msgid "Queue tracks in an ad-hoc playlist, or let the Auto DJ take over."
+msgstr ""
+
+#. ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.addin.xml
+#: ../data/addin-xml-strings.cs:193
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:193
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/PodcastGroupSource.cs:38
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:107
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:212
+msgid "Podcasts"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:194
+msgid "Subscribe to podcasts and stream or download episodes."
+msgstr ""
+
+#. ../src/Extensions/Banshee.RemoteAudio/Banshee.RemoteAudio.addin.xml
+#: ../data/addin-xml-strings.cs:198
+#, fuzzy
+#| msgid "Importing Audio CD"
+msgid "Remote Audio"
+msgstr "กำลังนำเข้าซีดีเพลง"
+
+#: ../data/addin-xml-strings.cs:199
+msgid "Provides support for remote speakers like the Airport Express"
+msgstr ""
+
+#. ../src/Extensions/Banshee.Sample/Banshee.Sample.addin.xml
+#: ../data/addin-xml-strings.cs:202
+#: ../src/Extensions/Banshee.Sample/Banshee.Sample/SampleSource.cs:40
+#, fuzzy
+#| msgid "Sample Rate:"
+msgid "Sample"
+msgstr "อัตราการเก็บข้อมูล:"
+
+#: ../data/addin-xml-strings.cs:203
+msgid "A sample source useful to developers."
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:204
+msgid "Sources"
+msgstr "แหล่ง"
+
+#. ../src/Extensions/Banshee.SqlDebugConsole/Banshee.SqlDebugConsole.addin.xml
+#: ../data/addin-xml-strings.cs:207
+msgid "SQL Debug Console"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:208
+msgid "Provides a UI for monitoring Banshee's SQL usage, and running queries."
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:209
+msgid "Debug"
+msgstr "ดีบั๊ก"
+
+#. ../src/Extensions/Banshee.Torrent/Banshee.Torrent.addin.xml
+#: ../data/addin-xml-strings.cs:212
+msgid "Torrent Downloader"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:213
+msgid "Support downloading BitTorrent files from podcasts."
 msgstr ""
-"เปิดใช้การสนับสนุนปุ่มแป้นพิมพ์พิเศษ (ปุ่มเล่นสื่อผสม) สำหรับ เล่น/พัก/ถัดไป/ก่อนหน้า "
-"ใช้งานได้กับชุดปุ่มลัดที่กำหนดในหัวข้อปุ่มลัดของ GNOME"
 
-#: ../data/banshee.schemas.in.h:6
-msgid "File Name Pattern"
-msgstr "รูปแบบชื่อแฟ้ม"
+#. ../src/Extensions/Banshee.Wikipedia/Banshee.Wikipedia.addin.xml
+#: ../data/addin-xml-strings.cs:217
+#: ../src/Extensions/Banshee.Wikipedia/Banshee.Wikipedia/ContextPage.cs:44
+msgid "Wikipedia"
+msgstr "วิกิพีเดีย"
+
+#: ../data/addin-xml-strings.cs:218
+msgid "View artist information from Wikipedia in the context pane."
+msgstr "ดูข้อมูลของศิลปินจากวิกิพีเดียในช่องข้อมูลประกอบ"
+
+#: ../data/addin-xml-strings.cs:219 ../data/addin-xml-strings.cs:224
+msgid "Context Pane"
+msgstr "ช่องข้อมูลประกอบ"
+
+#. ../src/Extensions/Banshee.YouTube/Banshee.YouTube.addin.xml
+#: ../data/addin-xml-strings.cs:222
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube/ContextPage.cs:44
+msgid "YouTube"
+msgstr ""
+
+#: ../data/addin-xml-strings.cs:223
+msgid "Show related YouTube videos in the context pane"
+msgstr ""
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:1
+msgid "3GPP"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:8
-#, no-c-format
+#: ../data/audio-profiles/aac-novell.xml.in.h:2
+msgid "AAC (Novell Encoder)"
+msgstr ""
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:3
+#: ../data/audio-profiles/mp3-lame.xml.in.h:4
+#: ../data/audio-profiles/mp3-xing.xml.in.h:2
+#: ../data/audio-profiles/wavpack.xml.in.h:3
+#: ../data/audio-profiles/wma.xml.in.h:4
+msgid "Bitrate"
+msgstr "อัตราบิต"
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:4
+#, fuzzy
+#| msgid "Continue {0}"
+msgid "Container"
+msgstr "ทำ {0} ต่อไป"
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:5
 msgid ""
-"Format for creating filenames/directories for ripped tracks, imported music, "
-"etc. Format is relative to the Banshee music directory... do not form an "
-"absolute path! Tokens: %artist%, %album%, %title%, %track_number%, %"
-"track_count%, %track_number_nz% (No prefixed zero), %track_count_nz% (No "
-"prefixed zero)."
+"Designed to be the successor of the MP3 format, AAC generally achieves "
+"better sound quality than MP3 at many bit rates."
+msgstr ""
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:6
+msgid "Long Term Prediction"
 msgstr ""
-"รูปแบบสำหรับตั้งชื่อแฟ้มหรือโฟลเดอร์สำหรับเพลงที่คัดแยกออกมาจากแผ่น หรือเพลงที่นำเข้าจากแหล่งอื่น "
-"ฯลฯ รูปแบบดังกล่าวจะสัมพัทธ์กับโฟลเดอร์เพลงของ Banshee ไม่ใช่เป็นพาธเต็ม! โทเคนที่ใช้ได้คือ: %"
-"artist%, %album%, %title%, %track_number%, %track_count%, %track_number_nz% "
-"(ไม่มีเลขศูนย์นำหน้า), %track_count_nz% (ไม่มีเลขศูนย์นำหน้า)"
 
-#: ../data/banshee.schemas.in.h:9
-msgid "Height of the main interface window."
-msgstr "ความสูงของหน้าต่างหลักสำหรับติดต่อผู้ใช้"
+#: ../data/audio-profiles/aac-novell.xml.in.h:7
+msgid "Low Complexity"
+msgstr ""
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:8
+msgid "MPEG-4 ISO"
+msgstr ""
+
+#: ../data/audio-profiles/aac-novell.xml.in.h:9
+msgid "MPEG-4 QuickTime"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:10
-msgid "Move music on info save"
-msgstr "ย้ายแฟ้มเพลงเมื่อบันทึกข้อมูลเพลง"
+#: ../data/audio-profiles/aac-novell.xml.in.h:10
+msgid "Output Format"
+msgstr "ฟอร์แมตผลลัพธ์"
 
-#: ../data/banshee.schemas.in.h:11
+#: ../data/audio-profiles/aac-novell.xml.in.h:11
+msgid "Profile"
+msgstr "โพรไฟล์"
+
+#: ../data/audio-profiles/base.xml.in.h:1
+msgid "Channels"
+msgstr "ช่องสัญญาณ"
+
+#: ../data/audio-profiles/flac.xml.in.h:1
+msgid "Free Lossless Audio Codec"
+msgstr ""
+
+#: ../data/audio-profiles/flac.xml.in.h:2
 msgid ""
-"Move music within banshee music library directory when saving track info"
-msgstr "ย้ายแฟ้มเพลงในโฟลเดอร์ไลบรารีเพลงของ Banshee เมื่อบันทึกข้อมูลเพลง"
+"Free Lossless Audio Codec (FLAC) is an open source codec that compresses but "
+"does not degrade audio quality."
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:12
-msgid "Name of media playback engine."
-msgstr "ชื่อของกลไกการเล่นสื่อ"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:1
+#: ../data/audio-profiles/mp3-xing.xml.in.h:1
+msgid ""
+"A proprietary and older, but also popular, lossy audio format that produces "
+"larger files at lower bitrates."
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:13
-msgid "Pixel position of Main Player Window on the X Axis"
-msgstr "ตำแหน่งของหน้าต่างเล่นเพลงหลักในแนวแกน X"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:2
+msgid "Average Bitrate"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:14
-msgid "Pixel position of Main Player Window on the Y Axis"
-msgstr "ตำแหน่งของหน้าต่างเล่นเพลงหลักในแนวแกน Y"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:3
+#: ../data/audio-profiles/vorbis.xml.in.h:2
+#: ../data/audio-profiles/wavpack.xml.in.h:2
+#: ../data/audio-profiles/wma.xml.in.h:3
+#, fuzzy
+#| msgid "Reset"
+msgid "Best"
+msgstr "คืนค่าเดิม"
 
-#: ../data/banshee.schemas.in.h:15
-msgid "Player Engine Name"
-msgstr "ชื่อกลไกการเล่นเพลง"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:5
+msgid "Constant Bitrate"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:16
-msgid "Set the IO backend in Banshee"
-msgstr "กำหนดแบ็กเอนด์ของ IO ใน Banshee"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:6
+msgid "Extreme"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:17
-msgid "Show advanced track properties"
-msgstr "แสดงข้อมูลเพิ่มเติมของเพลง"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:7
+msgid "Insane"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:18
-msgid "Show the Initial Import Dialog"
-msgstr "แสดงกล่องโต้ตอบนำเข้าเพลงเริ่มแรก"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:8
+msgid "LAME Preset"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:19
-msgid "Show the Initial Import Dialog when the Banshee library is empty"
-msgstr "แสดงกล่องโต้ตอบนำเข้าเพลงเริ่มแรกถ้าไลบรารีของ Banshee ยังไม่มีเพลง"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:9
+msgid "MP3 (LAME Encoder)"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:20
-msgid "Source View Width"
-msgstr "ความกว้างของช่องแหล่งเพลง"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:10
+msgid "Medium"
+msgstr "ปานกลาง"
 
-#: ../data/banshee.schemas.in.h:21
-msgid "True if main window is to be maximized, false if it is not."
-msgstr "เป็นจริงถ้าจะให้หน้าต่างอยู่ในสถานะขยายเต็มจอ หรือเป็นเท็จถ้าไม่ใช่"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:11
+#, fuzzy
+#| msgid "Reset"
+msgid "Preset"
+msgstr "คืนค่าเดิม"
 
-#: ../data/banshee.schemas.in.h:22
-msgid ""
-"True if the advanced expander should be expanded in the track properties "
-"dialog, false if it should be closed"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:12
+msgid "Standard"
 msgstr ""
-"เป็นจริงถ้าจะให้ขยายช่องข้อมูลเพิ่มเติมของเพลงในกล่องโต้ตอบข้อมูลเพลง หรือเป็นเท็จถ้าจะไม่ให้ขยาย"
 
-#: ../data/banshee.schemas.in.h:23
-msgid "Visibility of Album Column."
-msgstr "แสดงคอลัมน์อัลบั้มหรือไม่"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:13
+msgid "VBR Mode"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:24
-msgid "Visibility of Artist Column."
-msgstr "แสดงคอลัมน์ศิลปินหรือไม่"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:14
+msgid "VBR Quality"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:25
-msgid "Visibility of Time Column."
-msgstr "แสดงคอลัมน์เวลาหรือไม่"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:15
+msgid "Variable Bitrate"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:26
-msgid "Visibility of Title Column."
-msgstr "แสดงคอลัมน์ชื่อเพลงหรือไม่"
+#: ../data/audio-profiles/mp3-lame.xml.in.h:16
+#: ../data/audio-profiles/vorbis.xml.in.h:5
+#: ../data/audio-profiles/wavpack.xml.in.h:15
+#: ../data/audio-profiles/wma.xml.in.h:7
+msgid "Worst"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:27
-msgid "Visibility of Track Column."
-msgstr "แสดงคอลัมน์ลำดับเพลงหรือไม่"
+#: ../data/audio-profiles/mp3-xing.xml.in.h:3
+msgid "MP3 (Xing Encoder)"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:28
-msgid "Visibility of Year Column."
-msgstr "แสดงคอลัมน์ปีหรือไม่"
+#: ../data/audio-profiles/vorbis.xml.in.h:1
+msgid "Audio quality"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:29
-msgid "Volume Output Level"
-msgstr "ความดังของเสียง"
+#: ../data/audio-profiles/vorbis.xml.in.h:3
+msgid "Ogg Vorbis"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:30
+#: ../data/audio-profiles/vorbis.xml.in.h:4
 msgid ""
-"Volume of playback relative to mixer output (except on Helix, which sets "
-"volume directly on PCM"
+"Vorbis is an open source, lossy audio codec with high quality output at a "
+"lower file size than MP3."
 msgstr ""
-"ความดังของเสียงที่เล่น เทียบกับผลลัพธ์ของเครื่องมือปรับความดังเสียงของระบบ (ยกเว้นบน Helix "
-"ซึ่งกำหนดความดังของเสียงโดยตรงที่ PCM"
 
-#: ../data/banshee.schemas.in.h:31
-msgid "Width of Album Column."
-msgstr "ความกว้างของคอลัมน์อัลบั้ม"
+#: ../data/audio-profiles/wavpack.xml.in.h:1
+msgid ""
+"A fast and efficient open source audio format offering lossless and high-"
+"quality lossy encoding with great dynamic range."
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:32
-msgid "Width of Artist Column."
-msgstr "ความกว้างของคอลัมน์ศิลปิน"
+#: ../data/audio-profiles/wavpack.xml.in.h:4
+msgid "Default"
+msgstr "ปริยาย"
 
-#: ../data/banshee.schemas.in.h:33
-msgid "Width of Last Played Column."
-msgstr "ความกว้างของคอลัมน์เวลาเล่นล่าสุด"
+#: ../data/audio-profiles/wavpack.xml.in.h:5
+#, fuzzy
+#| msgid "Default player engine"
+msgid "Default Compression"
+msgstr "กลไกเครื่องเล่นปริยาย"
 
-#: ../data/banshee.schemas.in.h:34
-msgid "Width of Plays Column."
-msgstr "ความกว้างของคอลัมน์จำนวนครั้งที่เล่น"
+#: ../data/audio-profiles/wavpack.xml.in.h:6
+#, fuzzy
+#| msgid "Processing..."
+msgid "Extra processing"
+msgstr "กำลังประมวลผล..."
 
-#: ../data/banshee.schemas.in.h:35
-msgid "Width of Rating Column."
-msgstr "ความกว้างของคอลัมน์คะแนน"
+#: ../data/audio-profiles/wavpack.xml.in.h:7
+msgid "Fast Compression"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:36
-msgid "Width of Source View Column."
-msgstr "ความกว้างของคอลัมน์แสดงแหล่งเพลง"
+#: ../data/audio-profiles/wavpack.xml.in.h:8
+msgid "High Compression"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:37
-msgid "Width of Time Column."
-msgstr "ความกว้างของคอลัมน์เวลา"
+#: ../data/audio-profiles/wavpack.xml.in.h:9
+#, fuzzy
+#| msgid "High"
+msgid "Highest"
+msgstr "สูง"
 
-#: ../data/banshee.schemas.in.h:38
-msgid "Width of Title Column."
-msgstr "ความกว้างของคอลัมน์ชื่อเพลง"
+#: ../data/audio-profiles/wavpack.xml.in.h:10
+msgid "Lossy mode"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:39
-msgid "Width of Track Column."
-msgstr "ความกว้างของคอลัมน์ลำดับเพลง"
+#: ../data/audio-profiles/wavpack.xml.in.h:11
+msgid "Mode"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:40
-msgid "Width of Year Column."
-msgstr "ความกว้างของคอลัมน์ปี"
+#: ../data/audio-profiles/wavpack.xml.in.h:12
+msgid "Store MD5 sum in the file"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:41
-msgid "Width of the main interface window."
-msgstr "ความกว้างของหน้าต่างหลักสำหรับติดต่อผู้ใช้"
+#: ../data/audio-profiles/wavpack.xml.in.h:13
+msgid "Very High Compression"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:42
-msgid "Window Height"
-msgstr "ความสูงของหน้าต่าง"
+#: ../data/audio-profiles/wavpack.xml.in.h:14
+msgid "Wavpack"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:43
-msgid "Window Maximized"
-msgstr "หน้าต่างขยายเต็ม"
+#: ../data/audio-profiles/wav.xml.in.h:1
+msgid ""
+"WAV+PCM is a lossless format that holds uncompressed, raw pulse-code "
+"modulated (PCM) audio."
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:44
-msgid "Window Position X"
-msgstr "ตำแหน่งหน้าต่างในแนวแกน X"
+#: ../data/audio-profiles/wav.xml.in.h:2
+msgid "Waveform PCM"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:45
-msgid "Window Position Y"
-msgstr "ตำแหน่งหน้าต่างในแนวแกน Y"
+#: ../data/audio-profiles/wma.xml.in.h:1
+msgid ""
+"A proprietary lossy audio format with high quality output at a lower file "
+"size than MP3. A 96 kbps WMA is equivalent to a 128 kbps MP3."
+msgstr ""
+
+#: ../data/audio-profiles/wma.xml.in.h:2
+msgid "Audio Quality"
+msgstr ""
+
+#: ../data/audio-profiles/wma.xml.in.h:5
+msgid "Use a variable bitrate"
+msgstr ""
 
-#: ../data/banshee.schemas.in.h:46
-msgid "Window Width"
-msgstr "ความกว้างของหน้าต่าง"
+#: ../data/audio-profiles/wma.xml.in.h:6
+msgid "Windows Media Audio"
+msgstr ""
+
+#: ../data/desktop-files/common.desktop.in.h:1
+#: ../src/Clients/Muinshee/Muinshee/PlayerInterface.cs:76
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:107
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:206
+#: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:60
+msgid "Banshee Media Player"
+msgstr "โปรแกรมเล่นสื่อ Banshee"
+
+#: ../data/desktop-files/common.desktop.in.h:2
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:193
+msgid "Media Player"
+msgstr "โปรแกรมเล่นสื่อ"
+
+#: ../data/desktop-files/common.desktop.in.h:3
+msgid "Play and organize your media collection"
+msgstr ""
 
-#: ../libbanshee/gst-cd-rip-0.10.c:248
+#: ../libbanshee/banshee-bpmdetector.c:202 ../libbanshee/banshee-ripper.c:270
 msgid "Could not create pipeline"
 msgstr "ไม่สามารถสร้างไปป์ไลน์"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:254
-msgid "Could not initialize cdparanoia"
-msgstr "ไม่สามารถตั้งต้น cdparanoia"
+#: ../libbanshee/banshee-bpmdetector.c:208
+#, fuzzy
+#| msgid "Could not create pipeline"
+msgid "Could not create filesrc element"
+msgstr "ไม่สามารถสร้างไปป์ไลน์"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:265
-msgid "Could not create mbtrm plugin"
-msgstr "ไม่สามารถสร้างปลั๊กอิน mbtrm"
+#: ../libbanshee/banshee-bpmdetector.c:214
+#, fuzzy
+#| msgid "Could not create 'decodebin' plugin"
+msgid "Could not create decodebin2 plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน 'decodebin'"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:277
-msgid "Could not create encoder pipeline"
-msgstr "ไม่สามารถสร้างไปป์ไลน์สำหรับลงรหัส"
+#: ../libbanshee/banshee-bpmdetector.c:220
+#, fuzzy
+#| msgid "Could not create 'audioconvert' plugin"
+msgid "Could not create audioconvert plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน 'audioconvert'"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:283
-msgid "Could not create queue plugin"
-msgstr "ไม่สามารถสร้างปลั๊กอิน queue"
+#: ../libbanshee/banshee-bpmdetector.c:226
+#, fuzzy
+#| msgid "Could not create mbtrm plugin"
+msgid "Could not create bpmdetect plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน mbtrm"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:291
-msgid "Could not create GNOME VFS output plugin"
-msgstr "ไม่สามารถสร้างปลั๊กอินข้อมูลออกทาง GNOME VFS"
+#: ../libbanshee/banshee-bpmdetector.c:232
+#, fuzzy
+#| msgid "Could not create 'sinkben' plugin"
+msgid "Could not create fakesink plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน 'sinkben'"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:307
+#: ../libbanshee/banshee-bpmdetector.c:241
+#: ../libbanshee/banshee-bpmdetector.c:250 ../libbanshee/banshee-ripper.c:311
 msgid "Could not link pipeline elements"
 msgstr "ไม่สามารถเชื่อมอิลิเมนต์ไปป์ไลน์"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:398
-#: ../src/Banshee.Base/BansheeBranding.cs:75
-#: ../src/Banshee.Plugins/NotificationAreaIcon/NotificationAreaIconPlugin.cs:109
-msgid "Banshee"
-msgstr "Banshee"
+#: ../libbanshee/banshee-ripper.c:276
+#, fuzzy
+#| msgid "Could not initialize component"
+msgid "Could not initialize element from cdda URI"
+msgstr "ไม่สามารถตั้งต้นองค์ประกอบ"
 
-#: ../libbanshee/gst-cd-rip-0.10.c:424
-msgid "Encoding element does not support tagging!"
-msgstr "อิลิเมนต์ลงรหัสไม่สนับสนุนการแท็ก!"
+#: ../libbanshee/banshee-ripper.c:290
+msgid "Could not create encoder pipeline"
+msgstr "ไม่สามารถสร้างไปป์ไลน์สำหรับลงรหัส"
 
-#: ../libbanshee/gst-transcode-0.10.c:160
-msgid "No decoder could be found for source format."
-msgstr "ไม่พบตัวอ่านรหัสสำหรับฟอร์แมตข้อมูลเข้า"
+#: ../libbanshee/banshee-ripper.c:296
+msgid "Could not create queue plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน queue"
 
-#: ../libbanshee/gst-transcode-0.10.c:165
-msgid "Could not stat encoded file"
-msgstr "ไม่สามารถตรวจสอบสถานะแฟ้มผลลัพธ์"
+#: ../libbanshee/banshee-ripper.c:304
+#, fuzzy
+#| msgid "Could not create 'sinkben' plugin"
+msgid "Could not create filesink plugin"
+msgstr "ไม่สามารถสร้างปลั๊กอิน 'sinkben'"
 
-#: ../libbanshee/gst-transcode-0.10.c:258
-msgid "Could not create 'gnomevfssrc' plugin"
-msgstr "ไม่สามารถสร้างปลั๊กอิน 'gnomevfssrc'"
+#: ../libbanshee/banshee-transcoder.c:240
+#, fuzzy
+#| msgid "Could not create queue plugin"
+msgid "Could not create source element"
+msgstr "ไม่สามารถสร้างปลั๊กอิน queue"
 
-#: ../libbanshee/gst-transcode-0.10.c:264
-msgid "Could not create 'decodebin' plugin"
+#: ../libbanshee/banshee-transcoder.c:246
+#, fuzzy
+#| msgid "Could not create 'decodebin' plugin"
+msgid "Could not create 'decodebin2' plugin"
 msgstr "ไม่สามารถสร้างปลั๊กอิน 'decodebin'"
 
-#: ../libbanshee/gst-transcode-0.10.c:270
-msgid "Could not create 'gnomevfssink' plugin"
-msgstr "ไม่สามารถสร้างปลั๊กอิน 'gnomevfssink'"
+#: ../libbanshee/banshee-transcoder.c:252
+#, fuzzy
+#| msgid "Could not create pipeline"
+msgid "Could not create sink element"
+msgstr "ไม่สามารถสร้างไปป์ไลน์"
 
-#: ../libbanshee/gst-transcode-0.10.c:276
+#: ../libbanshee/banshee-transcoder.c:258
 msgid "Could not create 'sinkben' plugin"
 msgstr "ไม่สามารถสร้างปลั๊กอิน 'sinkben'"
 
-#: ../libbanshee/gst-transcode-0.10.c:282
+#: ../libbanshee/banshee-transcoder.c:264
 msgid "Could not create 'audioconvert' plugin"
 msgstr "ไม่สามารถสร้างปลั๊กอิน 'audioconvert'"
 
-#: ../libbanshee/gst-transcode-0.10.c:288
+#: ../libbanshee/banshee-transcoder.c:270
 msgid "Could not create encoding pipeline"
 msgstr "ไม่สามารถสร้างไปป์ไลน์สำหรับลงรหัส"
 
-#: ../libbanshee/gst-transcode-0.10.c:294
+#: ../libbanshee/banshee-transcoder.c:276
 msgid "Could not get sink pad from encoder"
 msgstr "ไม่สามารถขอดูที่เขียนข้อมูลออกของตัวลงรหัส"
 
-#: ../libbanshee/gst-transcode-0.10.c:377
+#: ../libbanshee/banshee-transcoder.c:341
 msgid "Could not construct pipeline"
 msgstr "ไม่สามารถสร้างไปป์ไลน์"
 
-#: ../libbanshee/hal-context.c:61
-msgid "Could not create new HAL context"
-msgstr "ไม่สามารถสร้าง HAL context ใหม่ได้"
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:65
+#, fuzzy
+#| msgid "Write CD"
+msgid "Write CD..."
+msgstr "เขียนซีดี"
 
-#: ../libbanshee/hal-context.c:69
-#, c-format
-msgid "Could not integrate HAL with mainloop: %s"
-msgstr "ไม่สามารถเชื่อมรวม HAL กับโปรแกรมหลัก: %s"
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:66
+#, fuzzy
+#| msgid "Write selection to audio CD"
+msgid "Write selected tracks to an audio CD"
+msgstr "เขียนเพลงที่เลือกเป็นซีดีเพลง"
 
-#: ../libbanshee/hal-context.c:89 ../libbanshee/hal-context.c:92
-msgid "Could not initialize HAL context"
-msgstr "ไม่สามารถตั้งต้น HAL context"
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:104
+#, fuzzy
+#| msgid "Could Not Write CD"
+msgid "Could not write CD"
+msgstr "ไม่สามารถเขียนซีดีได้"
 
-#: ../libbanshee/hal-context.c:101
-msgid "Could not get device list from HAL"
-msgstr "ไม่สามารถอ่านรายการอุปกรณ์จาก HAL"
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/Brasero.cs:105
+#, fuzzy
+#| msgid "HAL could not be initialized"
+msgid "Brasero could not be started"
+msgstr "ไม่สามารถตั้งต้น HAL ได้"
 
-#: ../src/Banshee.Base/ActionManager.cs:65
-msgid "_Music"
-msgstr "เ_พลง"
+#: ../src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs:79
+msgid "Fullscreen video playback active"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:68
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:76
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:434
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:440
-#: ../src/PlayerInterface.cs:1553
-msgid "New Playlist"
-msgstr "สร้างรายการเล่นใหม่"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/AudioCdRipper.cs:89
+#, fuzzy
+#| msgid "Could not create encoder pipeline"
+msgid "Could not find an encoder for ripping."
+msgstr "ไม่สามารถสร้างไปป์ไลน์สำหรับลงรหัส"
 
-#: ../src/Banshee.Base/ActionManager.cs:69
-msgid "Create a new empty playlist"
-msgstr "สร้างรายการเล่นใหม่"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/AudioCdRipper.cs:108
+#, fuzzy
+#| msgid "Could not create CD Ripper"
+msgid "Could not create CD ripping driver."
+msgstr "ไม่สามารถสร้างตัวคัดแยกเพลงจากซีดี"
 
-#: ../src/Banshee.Base/ActionManager.cs:72
-msgid "Import _Folder..."
-msgstr "นำเข้าโ_ฟลเดอร์..."
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/BpmDetector.cs:71
+#, fuzzy
+#| msgid "Could not create transcoder"
+msgid "Could not create BPM detection driver."
+msgstr "ไม่สามารถสร้างตัวแปลงรหัส"
 
-#: ../src/Banshee.Base/ActionManager.cs:73
-msgid "Import the contents of an entire folder"
-msgstr "นำเข้าเพลงทั้งหมดในโฟลเดอร์"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:82
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:771
+msgid "Enable _gapless playback"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:76
-msgid "Import Files..."
-msgstr "นำเข้าแฟ้ม..."
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:83
+msgid ""
+"Eliminate the small playback gap on track change.  Useful for concept albums "
+"and classical music"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:77
-msgid "Import files inside a folder"
-msgstr "นำเข้าแฟ้มภายในโฟลเดอร์"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:150
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:192
+msgid "Could not initialize GStreamer library"
+msgstr "ไม่สามารถตั้งต้นไลบรารี GStreamer"
 
-#: ../src/Banshee.Base/ActionManager.cs:80
-msgid "Import Music..."
-msgstr "นำเข้าเพลง..."
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:435
+msgid "Unknown Error"
+msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุ"
 
-#: ../src/Banshee.Base/ActionManager.cs:81
-msgid "Import music from a variety of sources"
-msgstr "นำเข้าเพลงจากแหล่งเพลงหลากหลาย"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:765
+msgid "_Enable ReplayGain correction"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:84
-msgid "Open Location..."
-msgstr "เปิดตำแหน่งแฟ้ม..."
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:766
+msgid ""
+"For tracks that have ReplayGain data, automatically scale (normalize) "
+"playback volume"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:85
-msgid "Open a remote location for playback"
-msgstr "เปิดแฟ้มจากตำแหน่งในเครือข่ายเพื่อเล่นเพลง"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:772
+msgid ""
+"Eliminate the small playback gap on track change.  Useful for concept albums "
+"and classical music."
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:88
-msgid "Write CD"
-msgstr "เขียนซีดี"
+#: ../src/Backends/Banshee.GStreamer/Banshee.GStreamer/Transcoder.cs:63
+msgid "Could not create transcoder"
+msgstr "ไม่สามารถสร้างตัวแปลงรหัส"
 
-#: ../src/Banshee.Base/ActionManager.cs:89
-msgid "Write selection to audio CD"
-msgstr "เขียนเพลงที่เลือกเป็นซีดีเพลง"
+#: ../src/Backends/Banshee.GStreamerSharp/Banshee.GStreamerSharp/PlayerEngine.cs:222
+msgid "GStreamer# 0.10"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:92
-msgid "Import Source"
-msgstr "นำเข้าแหล่ง"
+#: ../src/Backends/Banshee.Osx/Banshee.OsxBackend/OsxService.cs:91
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:132
+msgid "_Close"
+msgstr "ปิ_ด"
+
+#: ../src/Backends/Banshee.Osx/Banshee.OsxBackend/OsxService.cs:92
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:251
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:79
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:133
+msgid "Close"
+msgstr "ปิด"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:152
+#, fuzzy
+#| msgid "Disc Options"
+msgid "Help Options"
+msgstr "ตัวเลือกสำหรับแผ่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:93
-msgid "Import source to library"
-msgstr "นำเข้าแหล่งเพลงมายังไลบรารี"
+#: ../src/Clients/Booter/Booter/Entry.cs:153
+msgid "Show this help"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:96
-msgid "Source Properties..."
-msgstr "คุณสมบัติแหล่งเพลง..."
+#: ../src/Clients/Booter/Booter/Entry.cs:154
+msgid "Show options for controlling playback"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:97
-msgid "View source properties"
-msgstr "แสดงคุณสมบัติของแหล่งเพลง"
+#: ../src/Clients/Booter/Booter/Entry.cs:155
+msgid "Show options for querying the playing track"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:100
-msgid "_Quit"
-msgstr "_ออก"
+#: ../src/Clients/Booter/Booter/Entry.cs:156
+msgid "Show options for querying the playing engine"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:101
-msgid "Quit Banshee"
-msgstr "ออกจาก Banshee"
+#: ../src/Clients/Booter/Booter/Entry.cs:157
+msgid "Show options for the user interface"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:104
-msgid "_Edit"
-msgstr "แ_ก้ไข"
+#: ../src/Clients/Booter/Booter/Entry.cs:158
+msgid "Show options for developers and debugging"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:115
-msgid "Select All"
-msgstr "เลือกทั้งหมด"
+#: ../src/Clients/Booter/Booter/Entry.cs:159
+msgid "Show all option groups"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:160
+#, fuzzy
+#| msgid "Version Information..."
+msgid "Show version information"
+msgstr "ข้อมูลเวอร์ชัน..."
+
+#: ../src/Clients/Booter/Booter/Entry.cs:163
+msgid "Playback Control Options"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:164
+msgid ""
+"Play the next track, optionally restarting if the 'restart' value is set"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:165
+msgid ""
+"Play the previous track, optionally restarting if the 'restart value is set"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:166
+msgid ""
+"If the current song has been played longer than 4 seconds then restart it, "
+"otherwise the same as --previous"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:167
+msgid "Automatically start playing any tracks enqueued on the command line"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:168
+#, fuzzy
+#| msgid "_Playback"
+msgid "Start playback"
+msgstr "_ควบคุม"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:169
+#, fuzzy
+#| msgid "_Playback"
+msgid "Pause playback"
+msgstr "_ควบคุม"
 
-#: ../src/Banshee.Base/ActionManager.cs:116
-msgid "Select all songs in song list"
-msgstr "เลือกเพลงทั้งหมดในรายการ"
+#: ../src/Clients/Booter/Booter/Entry.cs:170
+#, fuzzy
+#| msgid "Toggle shuffle playback mode"
+msgid "Toggle playback"
+msgstr "สลับโหมดการเล่นแบบสุ่ม"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:171
+msgid "Completely stop playback"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:173
+msgid ""
+"Enable or disable playback stopping after the currently playing track (value "
+"should be either 'true' or 'false')"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:174
+msgid "Set the playback volume (0-100), prefix with +/- for relative values"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:175
+#, fuzzy
+#| msgid "Seek to a specific location in current song"
+msgid "Seek to a specific point (seconds, float)"
+msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันไปยังตำแหน่งที่ระบุ"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:176
+#, fuzzy
+#| msgid "Repeat the current playing song"
+msgid "Set the currently played track's rating (0 to 5)"
+msgstr "เล่นเพลงที่กำลังเล่นซ้ำอีก"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:179
+#, fuzzy
+#| msgid "Player Engine Name"
+msgid "Player Engine Query Options"
+msgstr "ชื่อกลไกการเล่นเพลง"
 
-#: ../src/Banshee.Base/ActionManager.cs:119
-msgid "Select None"
-msgstr "เลิกเลือกทั้งหมด"
+#: ../src/Clients/Booter/Booter/Entry.cs:180
+msgid "Current player state"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:181
+#, fuzzy
+#| msgid "Last Played"
+msgid "Last player state"
+msgstr "เล่นล่าสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:120
-msgid "Unselect all songs in song list"
-msgstr "ยกเลิกการเลือกเพลงทั้งหมดในรายการ"
+#: ../src/Clients/Booter/Booter/Entry.cs:182
+msgid "Query whether the player can be paused"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:183
+msgid "Query whether the player can seek"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:184
+msgid "Player volume"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:185
+msgid "Player position in currently playing track"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:188
+msgid "Playing Track Metadata Query Options"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:189
+msgid "URI"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:190
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:138
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:89
+msgid "Artist Name"
+msgstr "ชื่อศิลปิน"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:191
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:140
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:90
+msgid "Album Title"
+msgstr "ชื่ออัลบั้ม"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:192
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:137
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:88
+#, fuzzy
+#| msgid "Track"
+msgid "Track Title"
+msgstr "เพลงที่"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:193
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Duration"
+msgstr "ความยาวเพลง:"
+
+#. Translators: noun
+#: ../src/Clients/Booter/Booter/Entry.cs:194
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:117
+msgid "Track Number"
+msgstr "ลำดับเพลง"
+
+#. Translators: noun
+#: ../src/Clients/Booter/Booter/Entry.cs:195
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:126
+msgid "Track Count"
+msgstr "จำนวนเพลง"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:196
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:149
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:114
+#, fuzzy
+#| msgid "Disc name:"
+msgid "Disc Number"
+msgstr "ชื่อแผ่น:"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:197
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:142
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:113
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:177
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:78
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:132
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:77
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:92
+msgid "Year"
+msgstr "ปี"
 
-#: ../src/Banshee.Base/ActionManager.cs:123
-msgid "Jump to playing song"
+#: ../src/Clients/Booter/Booter/Entry.cs:198
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:230
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:131
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:60
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:96
+msgid "Rating"
+msgstr "คะแนนนิยม"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:199
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:322
+msgid "Score"
+msgstr ""
+
+#. Translators: noun
+#: ../src/Clients/Booter/Booter/Entry.cs:200
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:143
+msgid "Bit Rate"
+msgstr "อัตราบิต"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:203
+msgid "User Interface Options"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:204
+msgid "Present the user interface on the active workspace"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:205
+msgid "Enter the full-screen mode"
+msgstr "เข้าสู่โหมดเต็มจอ"
+
+#: ../src/Clients/Booter/Booter/Entry.cs:206
+msgid "Hide the user interface"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:207
+msgid "Do not present the user interface, regardless of any other options"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:208
+msgid "Present the import media dialog box"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:209
+msgid "Present the about dialog"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:210
+msgid "Present the open location dialog"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:211
+msgid "Present the preferences dialog"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:214
+msgid "Debugging and Development Options"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:215
+msgid "Enable general debugging features"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:216
+msgid "Enable debugging output of SQL queries"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:217
+msgid "Enable debugging output of Mono.Addins"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:218
+msgid "Specify an alternate database to use"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:219
+msgid "Specify an alternate key, default is /apps/banshee-1/"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:220
+msgid ""
+"Optimize instance for running uninstalled; most notably, this will create an "
+"alternate Mono.Addins database in the working directory"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:222
+msgid "Disable DBus support completely"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:224
+#, csharp-format
+msgid "Skip loading a custom gtkrc file ({0}) if it exists"
+msgstr ""
+
+#: ../src/Clients/Booter/Booter/Entry.cs:255
+#, csharp-format
+msgid "The following help arguments are invalid: {0}"
+msgstr ""
+
+#: ../src/Clients/Muinshee/Muinshee/AlbumDialog.cs:77
+msgid "Play Album"
+msgstr "เล่นอัลบั้ม"
+
+#: ../src/Clients/Muinshee/Muinshee/BaseDialog.cs:83
+msgid "En_queue"
+msgstr ""
+
+#: ../src/Clients/Muinshee/Muinshee/BaseDialog.cs:86
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:66
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:196
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:86
+msgid "_Play"
+msgstr "เ_ล่น"
+
+#: ../src/Clients/Muinshee/Muinshee/MuinsheeActions.cs:47
+msgid "Play _Song"
+msgstr "เล่นเ_พลง"
+
+#: ../src/Clients/Muinshee/Muinshee/MuinsheeActions.cs:48
+msgid "Add a song to the playlist"
+msgstr "เพิ่มเพลงในรายการเล่น"
+
+#: ../src/Clients/Muinshee/Muinshee/MuinsheeActions.cs:52
+msgid "Play _Album"
+msgstr "เล่น_อัลบั้ม"
+
+#: ../src/Clients/Muinshee/Muinshee/MuinsheeActions.cs:53
+msgid "Add an album to the playlist"
+msgstr "เพิ่มอัลบั้มในรายการเล่น"
+
+#: ../src/Clients/Muinshee/Muinshee/PlayerInterface.cs:267
+#, csharp-format
+msgid "{0} remaining"
+msgstr "เหลืออีก {0}"
+
+#: ../src/Clients/Muinshee/Muinshee/SongDialog.cs:53
+msgid "Play Song"
+msgstr "เล่นเพลง"
+
+#. Translators: this is a verb (command), not a noun (things)
+#: ../src/Clients/Nereid/Nereid/PlayerInterface.cs:459
+msgid "Search"
+msgstr "ค้นหา"
+
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:136
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:87
+msgid "Artist, Album, or Title"
+msgstr "ศิลปิน, อัลบั้ม, หรือชื่อเพลง"
+
+#. Alias for %album_artist%
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:139
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:72
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:78
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:82
+msgid "Album Artist"
+msgstr "ศิลปินเจ้าของอัลบั้ม"
+
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:141
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:98
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:185
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:364
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:91
+msgid "Genre"
+msgstr "แนวเพลง"
+
+#. Translators: noun
+#: ../src/Clients/Nereid/Nereid/ViewContainer.cs:143
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:214
+msgid "Comment"
+msgstr "ความคิดเห็น"
+
+#: ../src/Core/Banshee.Core/Banshee.Base/CoverArtSpec.cs:43
+#: ../src/Core/Banshee.Core/Banshee.Collection/ArtistInfo.cs:37
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:100
+#: ../src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtJob.cs:137
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:90
+msgid "Unknown Artist"
+msgstr "ไม่มีชื่อศิลปิน"
+
+#: ../src/Core/Banshee.Core/Banshee.Base/CoverArtSpec.cs:45
+#: ../src/Core/Banshee.Core/Banshee.Collection/AlbumInfo.cs:40
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:101
+#: ../src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtJob.cs:136
+msgid "Unknown Album"
+msgstr "ไม่มีชื่ออัลบั้ม"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:49
+msgid "Unknown Title"
+msgstr "ไม่มีชื่อเพลง"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:191
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:91
+msgid "Various Artists"
+msgstr ""
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
+msgid "Stream location not found"
+msgstr ""
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:347
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:328
+msgid "File not found"
+msgstr "ไม่พบแฟ้ม"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:349
+msgid "Codec for playing this media type not available"
+msgstr ""
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:351
+msgid "File protected by Digital Rights Management (DRM)"
+msgstr ""
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:353
+msgid "Unknown error"
+msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุ"
+
+#. TODO turn this into a PrimarySource-owned delegate?
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:422
+#, fuzzy
+#| msgid "Restart Song"
+msgid "_Restart Podcast"
+msgstr "ตั้งต้นเพลงใหม่"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:423
+#, fuzzy
+#| msgid "Restart Song"
+msgid "_Restart Audiobook"
+msgstr "ตั้งต้นเพลงใหม่"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:424
+#, fuzzy
+#| msgid "Restart Song"
+msgid "_Restart Video"
+msgstr "ตั้งต้นเพลงใหม่"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:425
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:86
+#, fuzzy
+#| msgid "Restart Song"
+msgid "_Restart Song"
+msgstr "ตั้งต้นเพลงใหม่"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:426
+#, fuzzy
+#| msgid "Restart Song"
+msgid "_Restart Item"
+msgstr "ตั้งต้นเพลงใหม่"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:442
+#, fuzzy
+#| msgid "Jump to playing song"
+msgid "_Jump to Playing Podcast"
+msgstr "ไปที่เพลงที่กำลังเล่น"
+
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:443
+#, fuzzy
+#| msgid "Jump to playing song"
+msgid "_Jump to Playing Audiobook"
 msgstr "ไปที่เพลงที่กำลังเล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:127
-msgid "Plugins..."
-msgstr "ปลั๊กอิน..."
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:444
+#, fuzzy
+#| msgid "Jump to playing song"
+msgid "_Jump to Playing Video"
+msgstr "ไปที่เพลงที่กำลังเล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:128
-msgid "Configure Banshee plugins"
-msgstr "ปรับแต่งปลั๊กอินของ Banshee"
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:445
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:82
+#, fuzzy
+#| msgid "Jump to playing song"
+msgid "_Jump to Playing Song"
+msgstr "ไปที่เพลงที่กำลังเล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:133
-msgid "_View"
-msgstr "_มุมมอง"
+#: ../src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs:446
+#, fuzzy
+#| msgid "Jump to playing song"
+msgid "_Jump to Playing Item"
+msgstr "ไปที่เพลงที่กำลังเล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:136
-msgid "Columns..."
-msgstr "คอลัมน์..."
+#. Translators: This is used to generate bookmark names. {0} is track title, {1} is minutes
+#. (possibly more than two digits) and {2} is seconds (between 00 and 60).
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs:173
+#, csharp-format
+msgid "{0} ({1}:{2:00})"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:137
-msgid "Select which columns to display in the song list"
-msgstr "เลือกคอลัมน์ที่ต้องการแสดงในรายการเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs:70
+#, csharp-format
+msgid "All Albums ({0})"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:141
-msgid "Display the equalizer."
-msgstr "แสดงที่ปรับคลื่นเสียง"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs:69
+#, csharp-format
+msgid "All Artists ({0})"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:144
-msgid "Logged Events Viewer..."
-msgstr "แสดงบันทึกเหตุการณ์..."
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseQueryFilterModel.cs:48
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:90
+#, fuzzy
+#| msgid "Pause"
+msgid "Value"
+msgstr "พัก"
 
-#: ../src/Banshee.Base/ActionManager.cs:145
-msgid "View a detailed log of events"
-msgstr "แสดงบันทึกเหตุการณ์ต่างๆ อย่างละเอียด"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:50
+msgid "Shuffle by A_lbum"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:148
-msgid "_Help"
-msgstr "_วิธีใช้"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:51
+#, fuzzy
+#| msgid "Album"
+msgid "by album"
+msgstr "อัลบั้ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:151
-msgid "Version Information..."
-msgstr "ข้อมูลเวอร์ชัน..."
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs:52
+msgid "Play all songs from an album, then randomly choose another album"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:152
-msgid "View detailed version and configuration information"
-msgstr "ดูรายละเอียดของรุ่นและการตั้งค่าต่างๆ"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs:49
+msgid "Shuffle by A_rtist"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:155
-msgid "Web Resources"
-msgstr "ทรัพยากรในเว็บ"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs:50
+#, fuzzy
+#| msgid "Artist"
+msgid "by artist"
+msgstr "ศิลปิน"
 
-#: ../src/Banshee.Base/ActionManager.cs:158
-msgid "Banshee User Guide (Wiki)"
-msgstr "คู่มือผู้ใช้ Banshee (Wiki)"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs:51
+msgid "Play all songs by an artist, then randomly choose another artist"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:159
-msgid "Learn about how to use Banshee"
-msgstr "เรียนรู้วิธีใช้ Banshee"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:36
+#, fuzzy
+#| msgid "Shuffle"
+msgid "Shuffle _Off"
+msgstr "สุ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:164
-msgid "Banshee Home Page"
-msgstr "โฮมเพจ Banshee"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:37
+msgid "manually"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:165
-msgid "Visit the Banshee Home Page"
-msgstr "ไปยังโฮมเพจของ Banshee"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs:38
+#, fuzzy
+#| msgid "Do not repeat playlist"
+msgid "Do not shuffle playlist"
+msgstr "ไม่ต้องเล่นเพลงในรายการเล่นซ้ำอีก"
 
-#: ../src/Banshee.Base/ActionManager.cs:170
-msgid "Get Involved"
-msgstr "มีส่วนร่วม"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:46
+msgid "Shuffle by _Rating"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:171
-msgid "Become a contributor to Banshee"
-msgstr "เข้าร่วมสมทบงานกับ Banshee"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:47
+#, fuzzy
+#| msgid "Rating"
+msgid "by rating"
+msgstr "คะแนนนิยม"
 
-#: ../src/Banshee.Base/ActionManager.cs:178
-msgid "_Playback"
-msgstr "_ควบคุม"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs:48
+msgid "Play songs randomly, prefer higher rated songs"
+msgstr ""
 
-#. Translators: Source being the generic word for playlist, device, library, etc
-#: ../src/Banshee.Base/ActionManager.cs:181 ../src/Banshee.Base/Source.cs:285
-#: ../src/SourceView.cs:101
-msgid "Source"
-msgstr "แหล่งเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs:42
+msgid "Shuffle by S_core"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:184
-msgid "Song Menu"
-msgstr "เมนูเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs:43
+msgid "by score"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:187
-msgid "Debug"
-msgstr "ดีบั๊ก"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs:44
+msgid "Play songs randomly, prefer higher scored songs"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:192
-msgid "Fullscreen"
-msgstr "เต็มจอ"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:47
+#, fuzzy
+#| msgid "Shuffle"
+msgid "Shuffle by _Song"
+msgstr "สุ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:193
-msgid "Toggle Fullscreen Mode"
-msgstr "เปิด-ปิดการแสดงแบบเต็มจอ"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:48
+msgid "by song"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:196
-msgid "Show Cover Art"
-msgstr "แสดงปกอัลบั้ม"
+#: ../src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs:49
+#, fuzzy
+#| msgid "Play all songs before repeating playlist"
+msgid "Play songs randomly from the playlist"
+msgstr "เล่นเพลงทั้งหมดในรายการเล่นแล้วเล่นซ้ำอีก"
 
-#: ../src/Banshee.Base/ActionManager.cs:197
-msgid "Toggle display of album cover art"
-msgstr "แสดงหรือซ่อนภาพปกอัลบั้ม"
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:138
+#, fuzzy
+#| msgid "Waiting for Media"
+msgid "Scanning for media"
+msgstr "กำลังรอแผ่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:188
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1382
+msgid "Scanning..."
+msgstr "กำลังตรวจข้อมูล..."
 
-#: ../src/Banshee.Base/ActionManager.cs:206
-msgid "Remove Song(s)"
-msgstr "ลบเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:204
+#, csharp-format
+msgid "Scanning ({0} files)..."
+msgstr "กำลังตรวจข้อมูล ({0} แฟ้ม)..."
 
-#: ../src/Banshee.Base/ActionManager.cs:207
-msgid "Remove selected song(s) from library"
-msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:238
+#, fuzzy
+#| msgid "Importing"
+msgid "Importing Media"
+msgstr "กำลังนำเข้า"
 
-#: ../src/Banshee.Base/ActionManager.cs:210
-msgid "Delete Song(s) From Drive"
-msgstr "ลบแฟ้มเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:245
+#: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:119
+msgid "The import process is currently running. Would you like to stop it?"
+msgstr "กระบวนการนำเข้าเพลงกำลังทำงานอยู่ คุณต้องการหยุดหรือไม่?"
 
-#: ../src/Banshee.Base/ActionManager.cs:211
-msgid "Permanently delete selected song(s) from storage medium"
-msgstr "ลบเพลงที่เลือกออกจากสื่อเก็บอย่างถาวร"
+#: ../src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:251
+#: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:81
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:185
+#, csharp-format
+msgid "Importing {0} of {1}"
+msgstr "กำลังนำเข้า {0} จาก {1}"
 
-#: ../src/Banshee.Base/ActionManager.cs:214
-msgid "Edit Song Metadata"
+#: ../src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs:79
+#, fuzzy, csharp-format
+#| msgid "Copying {0} of {1}"
+msgid "Rescanning {0} of {1}"
+msgstr "กำลังคัดลอก {0} จาก {1}"
+
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:234
+msgid "Upgrading your Banshee Database"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:235
+msgid ""
+"Please wait while your old Banshee database is migrated to the new format."
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs:1379
+#, fuzzy
+#| msgid "Edit Song Metadata"
+msgid "Refreshing Metadata"
 msgstr "แก้ไขข้อมูลเพลง"
 
-#: ../src/Banshee.Base/ActionManager.cs:215
-msgid "Edit metadata on selected songs"
-msgstr "แก้ไขข้อมูลเพลงที่เลือก"
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:252
+msgid "Classical"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:255
+msgid "Club"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:258
+#, fuzzy
+#| msgid "Done"
+msgid "Dance"
+msgstr "เสร็จแล้ว"
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:261
+msgid "Full Bass"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:264
+msgid "Full Bass and Treble"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:267
+#, fuzzy
+#| msgid "Fullscreen"
+msgid "Full Treble"
+msgstr "เต็มจอ"
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:270
+msgid "Laptop Speakers and Headphones"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:218
-msgid "Search for songs"
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:273
+msgid "Large Hall"
+msgstr "หอประชุมใหญ่"
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:276
+msgid "Live"
+msgstr "สด"
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:279
+msgid "Party"
+msgstr "งานเลี้ยง"
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:282
+msgid "Pop"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:285
+msgid "Reggae"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:288
+msgid "Rock"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:291
+msgid "Ska"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:294
+msgid "Soft"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:297
+msgid "Soft Rock"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:300
+msgid "Techno"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs:48
+msgid "Home Folder"
+msgstr "โฟลเดอร์บ้าน"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:58
+msgid "Remove From Library"
+msgstr "ลบออกจากไลบรารี"
+
+#. Translators: {0} is the library name, eg 'Music Library' or 'Podcasts'
+#: ../src/Core/Banshee.Services/Banshee.Library/LibrarySource.cs:122
+#, fuzzy, csharp-format
+#| msgid "Local Folder"
+msgid "{0} Folder"
+msgstr "โฟลเดอร์ในเครื่อง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:67
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Track Artist"
+msgstr "ความยาวเพลง:"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:83
+msgid "Album Artist Initial"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:88
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:199
+#, fuzzy
+#| msgid "Contributors"
+msgid "Conductor"
+msgstr "ผู้ร่วมสมทบ"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:93
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:192
+msgid "Composer"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:103
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:92
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:360
+msgid "Album"
+msgstr "อัลบั้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:108
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:73
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:127
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:76
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:97
+msgid "Title"
+msgstr "ชื่อเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:119
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:84
+msgid "Count"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:125
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:90
+#, fuzzy
+#| msgid "Track _Number"
+msgid "Number"
+msgstr "_ลำดับเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:131
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:96
+msgid "Count (unsorted)"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:137
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:102
+msgid "Number (unsorted)"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:143
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:108
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:108
+msgid "Disc Count"
+msgstr "จำนวนแผ่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicFileNamePattern.cs:155
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:206
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:120
+msgid "Grouping"
+msgstr ""
+
+#. Catalog.GetString ("Music Library")
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:59
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/MusicGroupSource.cs:39
+msgid "Music"
+msgstr "เพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:65
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search your music"
 msgstr "ค้นหาเพลง"
 
-#: ../src/Banshee.Base/ActionManager.cs:219
-msgid "Search for songs matching certain criteria"
-msgstr "ค้นหาเพลงที่ตรงกับเงื่อนไขที่กำหนด"
+#. Misc section
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:79
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:65
+msgid "Miscellaneous"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:222
-msgid "By matching album"
-msgstr "โดยค้นหาอัลบัม"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:82
+msgid "_Sort an artist's albums by year, not title"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:223
-msgid "Search all songs of this album"
-msgstr "ค้นหาเพลงทั้งหมดของอัลบัมนี้"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:92
+#, csharp-format
+msgid "{0} song"
+msgid_plural "{0} songs"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:113
+msgid "Music Folder"
+msgstr "โฟลเดอร์เพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:118
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:95
+msgid "Favorites"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:226
-msgid "By matching artist"
-msgstr "โดยค้นหาศิลปิน"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:119
+msgid "Songs rated four and five stars"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:227
-msgid "Search all songs of this artist"
-msgstr "ค้นหาเพลงทั้งหมดของศิลปินนี้"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:123
+msgid "Recent Favorites"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:230
-msgid "By matching genre"
-msgstr "โดยค้นหาประเภทเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:124
+msgid "Songs listened to often in the past week"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:231
-msgid "Search all songs of this genre"
-msgstr "ค้นหาเพลงทั้งหมดที่อยู่ในประเภทนี้"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:128
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:95
+msgid "Recently Added"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:234
-msgid "Add to Playlist"
-msgstr "เพิ่มในรายการเล่น"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:129
+msgid "Songs imported within the last week"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:235
-msgid "Append selected songs to playlist or create new playlist from selection"
-msgstr "เพิ่มเพลงที่เลือกลงในรายการเล่น หรือสร้างรายการใหม่จากเพลงที่เลือก"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:133
+msgid "Unheard"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:238 ../src/PlaylistView.cs:117
-msgid "Rating"
-msgstr "คะแนน"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:134
+msgid "Songs that have not been played or skipped"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:239
-msgid "Set rating for selected songs"
-msgstr "ให้คะแนนเพลงที่เลือก"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:141
+msgid "Neglected Favorites"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:248
-msgid "Import CD"
-msgstr "นำเข้าซีดี"
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:142
+msgid "Favorites not played in over two months"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:146
+msgid "Least Favorite"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:147
+msgid "Songs rated one or two stars or that you have frequently skipped"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:151
+msgid "700 MB of Favorites"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:152
+msgid "A data CD worth of favorite songs"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:157
+msgid "80 Minutes of Favorites"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:158
+msgid "An audio CD worth of favorite songs"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:163
+msgid "Unrated"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs:164
+msgid "Songs that haven't been rated"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:56
+msgid "Importing Songs"
+msgstr "กำลังนำเข้าเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/ThreadPoolImportSource.cs:113
+#, fuzzy, csharp-format
+#| msgid "Importing {0} of {1}"
+msgid "Importing From {0}"
+msgstr "กำลังนำเข้า {0} จาก {1}"
+
+#. Catalog.GetString ("Video Library")
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:43
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/VideoGroupSource.cs:38
+msgid "Videos"
+msgstr "วีดิทัศน์"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:48
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search your videos"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:65
+msgid "Produced By"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:70
+#, fuzzy, csharp-format
+#| msgid "{0} day"
+#| msgid_plural "{0} days"
+msgid "{0} video"
+msgid_plural "{0} videos"
+msgstr[0] "{0} วัน"
+msgstr[1] "{0} วัน"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:90
+msgid "Videos Folder"
+msgstr "โฟลเดอร์วีดิทัศน์"
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:96
+msgid "Videos rated four and five stars"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:100
+msgid "Unwatched"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Library/VideoLibrarySource.cs:101
+msgid "Videos that haven't been played yet"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs:98
+msgid "Default player engine"
+msgstr "กลไกเครื่องเล่นปริยาย"
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs:105
+msgid ""
+"No player engines were found. Please ensure Banshee has been cleanly "
+"installed."
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs:347
+msgid "Problem with Player Engine"
+msgstr "เกิดปัญหากับกลไกเครื่องเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/TranscoderService.cs:135
+#, csharp-format
+msgid "Converting {0} of {1}"
+msgstr "กำลังแปลง {0} จาก {1}"
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/TranscoderService.cs:135
+msgid "Initializing"
+msgstr "กำลังตั้งต้นงาน"
+
+#: ../src/Core/Banshee.Services/Banshee.MediaEngine/TranscoderService.cs:138
+msgid ""
+"Files are currently being converted to another format. Would you like to "
+"stop this?"
+msgstr "แฟ้มกำลังอยู่ระหว่างการแปลงไปเป็นฟอร์แมตอื่น คุณต้องการหยุดการแปลงหรือไม่?"
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataJob.cs:52
+msgid "Saving Metadata to File"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:49
+#, fuzzy
+#| msgid "Edit metadata on selected songs"
+msgid "Write _metadata to files"
+msgstr "แก้ไขข้อมูลเพลงที่เลือก"
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:50
+msgid "Save tags and other metadata inside supported media files"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:55
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:174
+msgid "Write _ratings and play counts to files"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:56
+msgid ""
+"Enable this option to save rating and playcount metadata inside supported "
+"audio files"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:60
+msgid "_Update file and folder names"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:61
+msgid "Rename files and folders according to media metadata"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:175
+msgid ""
+"Enable this option to save rating and play count metadata inside supported "
+"audio files whenever the rating is changed."
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:176
+#, fuzzy
+#| msgid "Importing"
+msgid "Import _ratings"
+msgstr "กำลังนำเข้า"
+
+#: ../src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:177
+msgid "Import play _counts"
+msgstr ""
+
+#. disabled by default
+#: ../src/Core/Banshee.Services/Banshee.Metrics/BansheeMetrics.cs:312
+msgid "Improve Banshee by sending anonymous usage data"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:52
+msgid "There is no available network connection"
+msgstr "ไม่ได้เชื่อมต่อเครือข่าย"
+
+#: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:78
+msgid "Cannot connect to NetworkManager or Wicd"
+msgstr "ไม่สามารถเชื่อมต่อไปยัง NetworkManager หรือ Wicd"
+
+#: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:79
+msgid "An available, working network connection will be assumed"
+msgstr "จะพยายามใช้การเชื่อมต่อที่มีอยู่และทำงานได้"
+
+#: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:159
+msgid "_Disable features requiring Internet access"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Networking/Network.cs:160
+msgid ""
+"Some features require a broadband Internet connection such as Last.fm or "
+"cover art fetching"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:160
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Search this playlist"
+msgstr "เรียงลำดับรายการเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs:229
+msgid "The track's rating was set differently on the device and in Banshee"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:309
+msgid "Playlist"
+msgstr "รายการเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:134
+msgid "Remove From Playlist"
+msgstr "ลบออกจากรายการเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:135
+msgid "Delete Playlist"
+msgstr "ลบรายการเล่น"
+
+#. TODO generate name based on the track selection, or begin editing it
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:386
+#: ../src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs:392
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:176
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:95
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:394
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:542
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView_DragAndDrop.cs:214
+msgid "New Playlist"
+msgstr "สร้างรายการเล่นใหม่"
+
+#: ../src/Core/Banshee.Services/Banshee.Playlists.Formats/AsfReferencePlaylistFormat.cs:43
+#, fuzzy
+#| msgid "Window Maximized"
+msgid "Windows Media ASX"
+msgstr "หน้าต่างขยายเต็ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Playlists.Formats/AsxPlaylistFormat.cs:46
+msgid "Windows Media ASX (*.asx)"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Playlists.Formats/M3uPlaylistFormat.cs:44
+msgid "MPEG Version 3.0 Extended (*.m3u)"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Playlists.Formats/PlsPlaylistFormat.cs:53
+msgid "Shoutcast Playlist version 2 (*.pls)"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Playlists.Formats/XspfPlaylistFormat.cs:44
+msgid "XML Shareable Playlist Format version 1 (*.xspf)"
+msgstr ""
+
+#. Pages (tabs)
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:50
+msgid "General"
+msgstr "ทั่วไป"
+
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:51
+msgid "Source Specific"
+msgstr "เจาะจงกับแหล่ง"
+
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:52
+msgid "Extensions"
+msgstr "ส่วนขยาย"
+
+#. General policies
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:55
+msgid "File Policies"
+msgstr "นโยบายแฟ้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Preferences/PreferenceService.cs:58
+msgid "Co_py files to media folders when importing"
+msgstr "_คัดลอกแฟ้มไปยังโฟลเดอร์สื่อเมื่อนำเข้า"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:63
+msgid "items"
+msgstr "รายการ"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:64
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:60
+msgid "minutes"
+msgstr "นาที"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:65
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:61
+msgid "hours"
+msgstr "ชั่วโมง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:66
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:63
+msgid "MB"
+msgstr "MB"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:67
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:64
+msgid "GB"
+msgstr "GB"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:74
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:361
+msgid "Artist"
+msgstr "ศิลปิน"
+
+#. Translators: These are unique search aliases for "artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+msgid "artist"
+msgstr "นักร้อง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+msgid "by"
+msgstr "โดย"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:76
+msgid "artists"
+msgstr "วงดนตรี"
+
+#. Translators: These are unique search aliases for "album artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:84
+msgid "albumartist"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:84
+msgid "compilationartist"
+msgstr ""
+
+#. Translators: These are unique search aliases for "album". You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+msgid "album"
+msgstr "อัลบั้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+msgid "on"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:94
+msgid "from"
+msgstr "จาก"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:100
+msgid "Disc"
+msgstr "แผ่น"
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+msgid "disc"
+msgstr "แผ่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+msgid "cd"
+msgstr "ซีดี"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:102
+msgid "discnum"
+msgstr "แผ่นที่"
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:110
+msgid "discs"
+msgstr "จำนวนแผ่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:110
+msgid "cds"
+msgstr "จำนวนซีดี"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+msgid "track"
+msgstr "เพลงที่"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+msgid "trackno"
+msgstr "ลำดับเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:119
+msgid "tracknum"
+msgstr ""
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:128
+msgid "tracks"
+msgstr "จำนวนเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:128
+msgid "trackcount"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:134
+msgid "Beats per Minute"
+msgstr ""
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:136
+msgid "bpm"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:249
-msgid "Import audio CD to library"
-msgstr "นำเข้าซีดีเพลงไปยังไลบรารี"
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+msgid "bitrate"
+msgstr "อัตราบิต"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+msgid "kbs"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:145
+msgid "kps"
+msgstr ""
+
+#. Translators: noun
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:152
+msgid "Sample Rate"
+msgstr "อัตราการเก็บข้อมูล"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:154
+msgid "samplerate"
+msgstr "อัตราการเก็บข้อมูล"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:154
+msgid "Hz"
+msgstr "Hz"
+
+#. Translators: noun
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:161
+msgid "Bits Per Sample"
+msgstr ""
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+msgid "bitspersample"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+msgid "bitdepth"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:163
+msgid "quantization"
+msgstr ""
+
+#. Translators: noun
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:169
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:363
+#: ../src/Core/Banshee.Services/Banshee.Sources/Source.cs:666
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:89
+msgid "Name"
+msgstr "ชื่อ"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+msgid "title"
+msgstr "ชื่อ"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#, fuzzy
+#| msgid "Title"
+msgid "titled"
+msgstr "ชื่อเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#, fuzzy
+#| msgid "Username:"
+msgid "name"
+msgstr "ชื่อผู้ใช้:"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:171
+#, fuzzy
+#| msgid "Enabled"
+msgid "named"
+msgstr "เปิดใช้งาน"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+msgid "year"
+msgstr "ปี"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+msgid "released"
+msgstr "ออก"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:179
+msgid "yr"
+msgstr ""
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:187
+msgid "genre"
+msgstr "แนวเพลง"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:194
+msgid "composer"
+msgstr "ผู้ประพันธ์"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:201
+msgid "conductor"
+msgstr "ผู้คุมวง"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:208
+msgid "grouping"
+msgstr ""
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:216
+msgid "comment"
+msgstr "ความคิดเห็น"
+
+#. Translators: noun
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:222
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:135
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:71
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:72
+msgid "License"
+msgstr ""
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+msgid "license"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+msgid "licensed"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:224
+msgid "under"
+msgstr ""
+
+#. , typeof(NullQueryValue)},
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:232
+msgid "rating"
+msgstr "คะแนนนิยม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:232
+msgid "stars"
+msgstr "ดาว"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:238
+msgid "Play Count"
+msgstr "จำนวนการเล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:258 ../src/PlayerInterface.cs:817
-#: ../src/PlayerInterface.cs:825
-msgid "Play"
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+msgid "plays"
+msgstr "จำนวนการเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+msgid "playcount"
+msgstr "จำนวนครั้งที่เล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:240
+msgid "listens"
+msgstr "จำนวนครั้งที่ฟัง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:246
+msgid "Skip Count"
+msgstr "จำนวนการข้าม"
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:248
+msgid "skips"
+msgstr "ข้าม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:248
+msgid "skipcount"
+msgstr "จำนวนการข้าม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:254
+msgid "File Size"
+msgstr "ขนาดแฟ้ม"
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:256
+msgid "size"
+msgstr "ขนาด"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:256
+msgid "filesize"
+msgstr "ขนาดแฟ้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:262
+msgid "File Location"
+msgstr "ตำแหน่งแฟ้ม"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+msgid "uri"
+msgstr "uri"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+msgid "path"
+msgstr "พาธ"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+msgid "file"
+msgstr "แฟ้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:264
+msgid "location"
+msgstr "ตำแหน่ง"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:270
+msgid "Time"
+msgstr "ความยาว"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+msgid "duration"
+msgstr "ความยาว"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+msgid "length"
+msgstr "ความยาว"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:272
+msgid "time"
+msgstr "เวลา"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:278
+msgid "Mime Type"
+msgstr "ชนิดแฟ้ม"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+msgid "type"
+msgstr "ชนิด"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+msgid "mimetype"
+msgstr "ชนิดแฟ้ม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+msgid "format"
+msgstr "รูปแบบ"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:280
+msgid "ext"
+msgstr "นามสกุล"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:286
+msgid "Last Played"
+msgstr "เล่นล่าสุด"
+
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+msgid "lastplayed"
+msgstr "เล่นล่าสุด"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+msgid "played"
 msgstr "เล่น"
 
-#: ../src/Banshee.Base/ActionManager.cs:259
-msgid "Play or pause the current song"
-msgstr "เล่นหรือพักเพลงปัจจุบัน"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:288
+msgid "playedon"
+msgstr "เล่นเมื่อ"
 
-#: ../src/Banshee.Base/ActionManager.cs:262
-msgid "Next"
-msgstr "ถัดไป"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:294
+msgid "Last Skipped"
+msgstr "ข้ามล่าสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:263
-msgid "Play the next song"
-msgstr "เล่นเพลงถัดไป"
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+msgid "lastskipped"
+msgstr "ข้ามล่าสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:266
-msgid "Previous"
-msgstr "ก่อนหน้า"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+msgid "skipped"
+msgstr "ข้าม"
 
-#: ../src/Banshee.Base/ActionManager.cs:267
-msgid "Play the previous song"
-msgstr "เล่นเพลงก่อนหน้า"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:296
+msgid "skippedon"
+msgstr "ข้ามเมื่อ"
 
-#: ../src/Banshee.Base/ActionManager.cs:272 ../src/ToggleStates.cs:41
-msgid "Repeat None"
-msgstr "ไม่เล่นซ้ำ"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:302
+msgid "Date Added"
+msgstr "วันที่เพิ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:273
-msgid "Do not repeat playlist"
-msgstr "ไม่ต้องเล่นเพลงในรายการเล่นซ้ำอีก"
+#. Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+msgid "added"
+msgstr "เพิ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:276 ../src/ToggleStates.cs:59
-msgid "Repeat All"
-msgstr "เล่นซ้ำทั้งหมด"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+msgid "imported"
+msgstr "นำเข้า"
 
-#: ../src/Banshee.Base/ActionManager.cs:277
-msgid "Play all songs before repeating playlist"
-msgstr "เล่นเพลงทั้งหมดในรายการเล่นแล้วเล่นซ้ำอีก"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+msgid "addedon"
+msgstr "เพิ่มเมื่อ"
 
-#: ../src/Banshee.Base/ActionManager.cs:280 ../src/ToggleStates.cs:50
-msgid "Repeat Single"
-msgstr "เล่นซ้ำเฉพาะเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+msgid "dateadded"
+msgstr "วันที่เพิ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:281
-msgid "Repeat the current playing song"
-msgstr "เล่นเพลงที่กำลังเล่นซ้ำอีก"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:304
+msgid "importedon"
+msgstr "นำเข้าเมื่อ"
 
-#: ../src/Banshee.Base/ActionManager.cs:286 ../src/ToggleStates.cs:68
-msgid "Shuffle"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:315
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:66
+msgid "Smart Playlist"
+msgstr "รายการเล่นอัจฉริยะ"
+
+#. Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:324
+msgid "score"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:330
+msgid "Playback Error"
+msgstr "ข้อผิดพลาดในการเล่นเพลง"
+
+#. Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:332
+msgid "playbackerror"
+msgstr "ข้อผิดพลาดในการเล่นเพลง"
+
+#. Translators: noun
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:349
+msgid "BPM"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:350
+msgid "Skips"
+msgstr "จำนวนการข้าม"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:351
+msgid "Plays"
+msgstr "จำนวนการเล่น"
+
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:356
+msgid "Random"
 msgstr "สุ่ม"
 
-#: ../src/Banshee.Base/ActionManager.cs:287
-msgid "Toggle between shuffle or continuous playback modes"
-msgstr "สลับระหว่างการสุ่มกับการเล่นเพลงตามลำดับ"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:366
+msgid "Highest Rating"
+msgstr "คะแนนนิยมสูงสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:296
-msgid "Seek Backward"
-msgstr "เลื่อนถอยหลัง"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:367
+msgid "Lowest Rating"
+msgstr "คะแนนนิยมต่ำสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:297
-msgid "Seek backward in current song"
-msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันถอยหลัง"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:369
+msgid "Highest Score"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:300
-msgid "Seek Forward"
-msgstr "เลื่อนไปหน้า"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:370
+msgid "Lowest Score"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:301
-msgid "Seek forward in current song"
-msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันไปข้างหน้า"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:372
+msgid "Most Often Played"
+msgstr "เล่นบ่อยที่สุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:304
-msgid "Seek To..."
-msgstr "เลื่อนไปยัง..."
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:373
+msgid "Least Often Played"
+msgstr "เล่นบ่อยน้อยที่สุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:305
-msgid "Seek to a specific location in current song"
-msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันไปยังตำแหน่งที่ระบุ"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:375
+msgid "Most Recently Played"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:308
-msgid "Restart Song"
-msgstr "ตั้งต้นเพลงใหม่"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:376
+#, fuzzy
+#| msgid "Last Played"
+msgid "Least Recently Played"
+msgstr "เล่นล่าสุด"
 
-#: ../src/Banshee.Base/ActionManager.cs:309
-msgid "Restart the current song"
-msgstr "ตั้งต้นเล่นเพลงปัจจุบันใหม่"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:378
+msgid "Most Recently Added"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:318 ../src/PlayerInterface.cs:1068
-msgid "Synchronize"
-msgstr "ปรับข้อมูลให้ตรงกัน"
+#: ../src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs:379
+msgid "Least Recently Added"
+msgstr ""
 
-#: ../src/Banshee.Base/ActionManager.cs:319
-msgid "Save changes to device or synchronize music library"
-msgstr "บันทึกการแก้ไขลงในอุปกรณ์ หรือปรับข้อมูลไลบรารีเพลงให้ตรงกัน"
+#. Translators: These are unique strings for playback errors. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:44
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:46
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapInfoBar.cs:97
+#, fuzzy
+#| msgid "Done"
+msgid "None"
+msgstr "เสร็จแล้ว"
 
-#: ../src/Banshee.Base/AudioCd/AudioCdCore.cs:80
-msgid "HAL is not initialized"
-msgstr "ยังไม่ได้เริ่มต้นการทำงานของ HAL"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:46
+#, fuzzy
+#| msgid "Done"
+msgid "none"
+msgstr "เสร็จแล้ว"
 
-#: ../src/Banshee.Base/AudioCd/AudioCdCore.cs:86
-msgid "Audio CD Core Initialized"
-msgstr "ตั้งต้นระบบแกนกลางสำหรับซีดีเพลงเรียบร้อยแล้ว"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:46
+msgid "no"
+msgstr ""
 
-#. work around mcs #76642
-#: ../src/Banshee.Base/AudioCd/AudioCdCore.cs:103
-msgid "Could not Read Audio CD"
-msgstr "ไม่สามารถอ่านซีดีเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:49
+msgid "Resource Not Found"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:86
-#: ../src/Banshee.Base/TrackInfo.cs:383
-msgid "Unknown Artist"
-msgstr "ไม่มีชื่อศิลปิน"
+#. Translators: These are unique strings for playback errors. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:51
+msgid "ResourceNotFound"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:87
-#: ../src/Banshee.Base/TrackInfo.cs:391
-msgid "Unknown Album"
-msgstr "ไม่มีชื่ออัลบั้ม"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:51
+msgid "missing"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:88
-#, csharp-format
-msgid "Track {0}"
-msgstr "เพลงที่ {0}"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:51
+msgid "notfound"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:93
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:58
-msgid "Audio CD"
-msgstr "ซีดีเพลง"
+#. Translators: These are unique strings for playback errors. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:54
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:56
+msgid "CodecNotFound"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:241
-msgid "Cannot Eject CD"
-msgstr "ไม่สามารถดันแผ่นออกได้"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:56
+msgid "nocodec"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCd/AudioCdDisk.cs:242
-msgid "The CD cannot be ejected while it is importing. Stop the import first."
-msgstr "ไม่สามารถดันแผ่นซีดีออกในระหว่างนำเข้าเพลงได้ คุณต้องหยุดนำเข้าเพลงก่อน"
+#. Translators: These are unique strings for playback errors. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:59
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:61
+msgid "Drm"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:83
-msgid "Could not create CD Ripper"
-msgstr "ไม่สามารถสร้างตัวคัดแยกเพลงจากซีดี"
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:61
+msgid "drm"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:239
-msgid "Importing CD"
-msgstr "กำลังนำเข้าซีดี"
+#. Translators: These are unique strings for playback errors. Please, no spaces. Blank ok.
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:64
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:66
+#: ../src/Core/Banshee.Services/Banshee.ServiceStack/Application.cs:354
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:208
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:210
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:212
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:389
+msgid "Unknown"
+msgstr "ไม่มีข้อมูล"
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:248
+#: ../src/Core/Banshee.Services/Banshee.Query/PlaybackErrorQueryValue.cs:66
+#, fuzzy
+#| msgid "Unknown"
+msgid "unknown"
+msgstr "ไม่มีข้อมูล"
+
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:79
+msgid "Unable to Migrate Smart Playlists"
+msgstr "ไม่สามารถย้ายข้อมูลรายการเล่นอัจฉริยะ"
+
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs:80
 #, csharp-format
-msgid ""
-"<i>{0}</i> is still being imported into the music library. Would you like to "
-"stop it?"
-msgstr "<i>{0}</i> ยังคงอยู่ระหว่างการนำเข้าสู่ไลบรารีเพลง คุณต้องการหยุดหรือไม่?"
+msgid "Please file a bug with this error: {0}"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:67
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:49
+msgid "Edit Smart Playlist"
+msgstr "แก้ไขรายการเล่นอัจฉริยะ"
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:256
+#: ../src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:242
+msgid "Delete Smart Playlist"
+msgstr "ลบรายการเล่นอัจฉริยะ"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/DatabaseSource.cs:147
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:163
 #, csharp-format
-msgid ""
-"The device node '{0}' differs from the device node already set for "
-"previously queued tracks ({1})"
-msgstr "อุปกรณ์ '{0}' แตกต่างจากอุปกรณ์ที่กำหนดไว้สำหรับเพลงที่เข้าคิวไว้ก่อนหน้านี้ ({1})"
+msgid "All Genres ({0})"
+msgstr ""
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:269
-msgid "Importing Audio CD"
-msgstr "กำลังนำเข้าซีดีเพลง"
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:64
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:89
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:139
+#, csharp-format
+msgid "{0} day"
+msgid_plural "{0} days"
+msgstr[0] "{0} วัน"
+msgstr[1] "{0} วัน"
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:270
-msgid "Initializing Drive"
-msgstr "กำลังตั้งต้นใช้งานไดรว์"
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:68
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:94
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:141
+#, csharp-format
+msgid "{0} hour"
+msgid_plural "{0} hours"
+msgstr[0] "{0} ชั่วโมง"
+msgstr[1] "{0} ชั่วโมง"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:72
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:98
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:143
+#, csharp-format
+msgid "{0} minute"
+msgid_plural "{0} minutes"
+msgstr[0] "{0} นาที"
+msgstr[1] "{0} นาที"
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:290
-#: ../src/Banshee.Base/AudioCdRipper.cs:354
-msgid "Cannot Import CD"
-msgstr "ไม่สามารถนำเข้าเพลงจากซีดีได้"
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:100
+#: ../src/Core/Banshee.Services/Banshee.Sources/DurationStatusFormatters.cs:145
+#, csharp-format
+msgid "{0} second"
+msgid_plural "{0} seconds"
+msgstr[0] "{0} วินาที"
+msgstr[1] "{0} วินาที"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/ErrorSource.cs:51
+msgid "Close Error Report"
+msgstr "ปิดรายงานข้อผิดพลาด"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/ErrorSource.cs:83
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:224
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ErrorListDialog.cs:46
+msgid "Error"
+msgstr "ผิดพลาด"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/ErrorSource.cs:84
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ErrorListDialog.cs:79
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:251
+#, fuzzy
+#| msgid "Entry Details:"
+msgid "Details"
+msgstr "รายละเอียดรายการ:"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:152
+#, fuzzy
+#| msgid "Error"
+msgid "Errors"
+msgstr "ผิดพลาด"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:205
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Sort Playlists By"
+msgstr "เรียงลำดับรายการเล่น"
+
+#. Translators: this is a noun, referring to the harddisk
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:214
+#, fuzzy
+#| msgid "Disk Drive:"
+msgid "Drive"
+msgstr "ไดรว์:"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:238
+msgid "File Organization"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:239
+msgid "Folder hie_rarchy"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:240
+#, fuzzy
+#| msgid "File Name:"
+msgid "File _name"
+msgstr "ชื่อแฟ้ม:"
 
-#: ../src/Banshee.Base/AudioCdRipper.cs:302
-#: ../src/Banshee.Base/ImportManager.cs:120
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:693
 #, csharp-format
-msgid "Importing {0} of {1}"
-msgstr "กำลังนำเข้า {0} จาก {1}"
+msgid "Adding {0} of {1} to {2}"
+msgstr "กำลังเพิ่ม {0} จาก {1} เข้าใน {2}"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:69
-msgid "Audio Disc:"
-msgstr "ซีดีเพลง:"
+#: ../src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:712
+#, csharp-format
+msgid "Deleting {0} of {1} From {2}"
+msgstr "กำลังลบ {0} จาก {1} ออกจาก {2}"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:73
-msgid "Data Disc:"
-msgstr "ซีดีข้อมูล:"
+#: ../src/Core/Banshee.Services/Banshee.Sources/Source.cs:671
+msgid "Size Ascending"
+msgstr "ตามขนาดจากน้อยไปมาก"
+
+#: ../src/Core/Banshee.Services/Banshee.Sources/Source.cs:676
+msgid "Size Descending"
+msgstr "ตามขนาดจากมากไปน้อย"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:130
+#: ../src/Core/Banshee.Services/Banshee.Sources/Source.cs:789
 #, csharp-format
-msgid "{0}:{1:00} of {2}"
-msgstr "{0}:{1:00} จาก {2}"
+msgid "{0} item"
+msgid_plural "{0} items"
+msgstr[0] "{0} รายการ"
+msgstr[1] "{0} รายการ"
+
+#. TODO should add library sources here, but requires changing quite a few
+#. things that depend on being loaded before the music library is added.
+#. AddSource (music_library = new MusicLibrarySource (), true);
+#. AddSource (video_library = new VideoLibrarySource (), false);
+#: ../src/Core/Banshee.Services/Banshee.Sources/SourceManager.cs:84
+msgid "Libraries"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:132
-msgid "Unknown Minutes"
-msgstr "ไม่ทราบจำนวนนาที"
+#: ../src/Core/Banshee.Services/Banshee.Sources/SourceManager.cs:85
+msgid "Online Media"
+msgstr ""
+
+#: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:82
+#: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:91
+#, fuzzy
+#| msgid "Error Burning CD"
+msgid "Error opening stream"
+msgstr "เกิดความผิดพลาดในการเขียนซีดี"
+
+#: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:83
+#, fuzzy
+#| msgid "Do not repeat playlist"
+msgid "Could not open stream or playlist"
+msgstr "ไม่ต้องเล่นเพลงในรายการเล่นซ้ำอีก"
+
+#: ../src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:92
+#, fuzzy
+#| msgid "Problem creating CD"
+msgid "Problem parsing playlist"
+msgstr "เกิดปัญหาขณะสร้างซีดี"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:133
+#: ../src/Core/Banshee.Services/Banshee.Web/Browser.cs:67
+#, fuzzy
+#| msgid "Could not Read Audio CD"
+msgid "Could not launch URL"
+msgstr "ไม่สามารถอ่านซีดีเพลง"
+
+#: ../src/Core/Banshee.Services/Banshee.Web/Browser.cs:68
 #, csharp-format
-msgid "{0} Minutes"
-msgstr "{0} นาที"
+msgid ""
+"{0} could not be opened: {1}\n"
+"\n"
+" Check your 'Preferred Applications' settings."
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:49
+msgid "Show:"
+msgstr "แสดง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:51
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:83
+msgid "All"
+msgstr "ทั้งหมด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:52
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerWindow.cs:82
+msgid "Enabled"
+msgstr "เปิดใช้งาน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:53
+#, fuzzy
+#| msgid "Enabled"
+msgid "Not Enabled"
+msgstr "เปิดใช้งาน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Addins.Gui/AddinView.cs:56
+msgid "Search:"
+msgstr "ค้นหา:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/AlbumListView.cs:76
+msgid "Disable album grid"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/AlbumListView.cs:77
+msgid "Disable album grid and show the classic layout instead"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:136
-#: ../src/Banshee.Base/Sources/DapSource.cs:312
-#: ../src/Banshee.Widgets/StreamPositionLabel.cs:87
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/BaseTrackListView.cs:76
+msgid "Cannot Reorder While Sorted"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/BaseTrackListView.cs:77
+msgid ""
+"To put the playlist in manual sort mode, click the currently sorted column "
+"header until the sort arrow goes away."
+msgstr ""
+
+#. Translators: this is {disc number} of {disc count}
+#. Translators: this is {track number} of {track count}
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellDiscAndCount.cs:40
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellTrackAndCount.cs:40
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/StreamPositionLabel.cs:172
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:148
 #, csharp-format
 msgid "{0} of {1}"
 msgstr "{0} จาก {1}"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:137
-msgid "Unknown MB"
-msgstr "ไม่ทราบจำนวน MB"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:222
+#, fuzzy
+#| msgid "Play"
+msgid "Playing"
+msgstr "เล่น"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerConfigurationPane.cs:138
-#: ../src/Banshee.Base/Utilities.cs:77
-#, csharp-format
-msgid "{0} MB"
-msgstr "{0} MB"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:223
+#, fuzzy
+#| msgid "Pause"
+msgid "Paused"
+msgstr "พัก"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerCore.cs:116
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSource.cs:61
-msgid "New Audio CD"
-msgstr "ซีดีเพลงใหม่"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:225
+#, fuzzy
+#| msgid "New iPod Detected"
+msgid "Protected"
+msgstr "ตรวจพบไอพอดใหม่"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerCore.cs:117
-msgid "Create a new audio CD"
-msgstr "สร้างซีดีเพลงใหม่"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ColumnCellStatusIndicator.cs:226
+msgid "External Document"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerCore.cs:159
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:107
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:191
-msgid "Problem creating CD"
-msgstr "เกิดปัญหาขณะสร้างซีดี"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/CoverArtEditor.cs:80
+#, fuzzy
+#| msgid "Show Cover Art"
+msgid "Choose New Cover Art..."
+msgstr "แสดงปกอัลบั้ม"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerCore.cs:160
-msgid "No CD recording hardware was found."
-msgstr "ไม่พบอุปกรณ์สำหรับเขียนซีดี"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/CoverArtEditor.cs:98
+#, fuzzy
+#| msgid "Show Cover Art"
+msgid "Delete This Cover Art"
+msgstr "แสดงปกอัลบั้ม"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerFormatList.cs:62
-msgid "Audio"
-msgstr "ซีดีเพลง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:127
+#, fuzzy
+#| msgid "Track"
+msgid "Track #"
+msgstr "เพลงที่"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerFormatList.cs:63
-msgid "MP3"
-msgstr "ซีดี MP3"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:128
+#, fuzzy
+#| msgid "Track _Count"
+msgid "Track & Count"
+msgstr "_จำนวนเพลง"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerFormatList.cs:64
-msgid "Data"
-msgstr "ซีดีข้อมูล"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:132
+#, fuzzy
+#| msgid "Disc name:"
+msgid "Disc #"
+msgstr "ชื่อแผ่น:"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:100
-msgid "Some songs could not be found."
-msgstr "หาเพลงบางเพลงไม่พบ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:133
+#, fuzzy
+#| msgid "Disconnect"
+msgid "Disc & Count"
+msgstr "ตัดการเชื่อมต่อ"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:108
-msgid "No CD writers were found on your system."
-msgstr "ไม่พบเครื่องเขียนซีดีในระบบ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:136
+#, csharp-format
+msgid "{0} kbps"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:114
-msgid "Insert Blank CD"
-msgstr "กรุณาใส่ซีดีเปล่า"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:139
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:123
+#, csharp-format
+msgid "{0} Hz"
+msgstr "{0} Hz"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:115
-msgid "Please insert a blank CD disk for the write process."
-msgstr "กรุณาใส่แผ่นซีดีเปล่าสำหรับการเขียน"
+#: ../src/Core/Banshee.ThickClient/Banshee.Collection.Gui/DefaultColumnController.cs:142
+#, csharp-format
+msgid "{0} bits"
+msgstr "{0} บิต"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.ContextPane/ContextPane.cs:119
+msgid "Make the context pane larger or smaller"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:135
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:155
+#: ../src/Core/Banshee.ThickClient/Banshee.ContextPane/ContextPane.cs:123
+msgid "Hide context pane"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.ContextPane/ContextPane.cs:144
+#, fuzzy
+#| msgid "Waiting for transcoder..."
+msgid "Waiting for playback to begin..."
+msgstr "กำลังรอตัวแปลงรหัส..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.ContextPane/ContextPane.cs:150
+msgid "Loading..."
+msgstr "กำลังเรียก..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:74
+msgid "Preamp"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:100
+#, csharp-format
+msgid "+{0} dB"
+msgstr "+{0} dB"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:102
 #, csharp-format
-msgid "The inserted media is not large enough to hold your selected music."
-msgstr "สื่อที่ใช้มีขนาดไม่พอสำหรับเพลงที่คุณเลือก"
+msgid "{0} dB"
+msgstr "{0} dB"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:137
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:124
 #, csharp-format
-msgid "{0} more minute is needed on the media."
-msgid_plural "{0} more minutes are needed on the media."
-msgstr[0] "ต้องการความยาวเพิ่มในแผ่นอีก {0} นาที"
-msgstr[1] "ต้องการความยาวเพิ่มในแผ่นอีก {0} นาที"
+msgid "{0} kHz"
+msgstr "{0} kHz"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerWindow.cs:53
+msgid "Equalizer"
+msgstr "ที่ปรับคลื่นเสียง"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:141
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:161
-msgid "Not Enough Space on Disc"
-msgstr "แผ่นมีเนื้อที่ไม่พอ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerWindow.cs:144
+#, fuzzy
+#| msgid "New Playlist"
+msgid "New Preset"
+msgstr "สร้างรายการเล่นใหม่"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:157
+#. Translators: this is the window title when a track is playing
+#. {0} is the track title, {1} is the artist name
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:203
 #, csharp-format
-msgid "{0} more megabyte is needed on the media."
-msgid_plural "{0} more megabytes are needed on the media."
-msgstr[0] "ต้องการเนื้อที่เพิ่มในแผ่นอีก {0} เมกะไบต์"
-msgstr[1] "ต้องการเนื้อที่เพิ่มในแผ่นอีก {0} เมกะไบต์"
+msgid "{0} by {1}"
+msgstr "{0} โดย {1}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:87
+msgid "_Bookmarks"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:90
+msgid "_Add Bookmark"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:91
+msgid "Bookmark the Position in the Current Track"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:174
-msgid "Insufficient Disk Space"
-msgstr "เนื้อที่ดิสก์ไม่พอ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs:104
+msgid "_Remove Bookmark"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:54
+msgid "Maintainers"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:175
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:62
+msgid "Contributors"
+msgstr "ผู้ร่วมสมทบ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:96
+msgid "Extraordinary Multimedia Management and Playback"
+msgstr "โปรแกรมเล่นและจัดการเพลงแบบพิเศษ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:98
 #, csharp-format
-msgid "Creating this CD requires at least {0} MiB of free disk space."
-msgstr "การสร้างแผ่นซีดีนี้ ต้องการใช้เนื้อที่ว่างอย่างน้อย {0} MiB"
+msgid ""
+"Copyright © 2005–{0} Novell, Inc.\n"
+"Copyright © 2005–{0} Others\n"
+"Copyright © 2005 Aaron Bockover"
+msgstr ""
+"Copyright © 2005–{0} Novell, Inc.\n"
+"Copyright © 2005–{0} Others\n"
+"Copyright © 2005 Aaron Bockover"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:194
-msgid "Continue Anyway"
-msgstr "ยืนยันทำต่อไป"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:104
+msgid "Banshee Website"
+msgstr "เว็บไซต์ Banshee"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:254
-msgid "Could Not Write CD"
-msgstr "ไม่สามารถเขียนซีดีได้"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ConfirmShutdownDialog.cs:50
+msgid "Important tasks are running"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionPreparer.cs:255
-msgid "No suitable encoder could be found to convert selected songs."
-msgstr "ไม่พบตัวลงรหัสเสียงที่เหมาะสมในการแปลงเพลงที่เลือก"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ConfirmShutdownDialog.cs:53
+msgid ""
+"Closing Banshee now will cancel any currently running tasks. They cannot be "
+"resumed automatically the next time Banshee is run."
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:48
-msgid "Writing a disc"
-msgstr "กำลังเขียนแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ConfirmShutdownDialog.cs:60
+#, fuzzy
+#| msgid "Continue Anyway"
+msgid "Quit Anyway"
+msgstr "ยืนยันทำต่อไป"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:55
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:56
-msgid "Writing Disc"
-msgstr "กำลังเขียนแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ConfirmShutdownDialog.cs:61
+#, fuzzy
+#| msgid "Continue Anyway"
+msgid "Continue Running"
+msgstr "ยืนยันทำต่อไป"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/DefaultApplicationHelperDialog.cs:69
+msgid "Make Banshee the default media player?"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:57
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/DefaultApplicationHelperDialog.cs:70
 msgid ""
-"Stopping the disc writing process will render it useless. Would you like to "
-"stop writing the disc?"
+"Currently another program is configured as the default media player.  Would "
+"you prefer Banshee to be the default?"
 msgstr ""
-"การหยุดกระบวนการเขียนแผ่นจะทำให้แผ่นใช้การไม่ได้อีกต่อไป คุณต้องการหยุดเขียนแผ่นหรือไม่?"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:95
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:110
-msgid "Error writing disc"
-msgstr "เกิดความผิดพลาดในการเขียนแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/DefaultApplicationHelperDialog.cs:72
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:435
+#, fuzzy, csharp-format
+#| msgid "Do not show this dialog again"
+msgid "Do not ask me this again"
+msgstr "ไม่ต้องแสดงกล่องโต้ตอบนี้อีก"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:99
-msgid "An unknown error occurred when attempting to write the disc."
-msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุขณะพยายามเขียนแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/DefaultApplicationHelperDialog.cs:86
+msgid "Make Banshee the Default"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:105
-msgid "Disc writing complete"
-msgstr "เขียนแผ่นเสร็จสิ้น"
+#. Translators: verb
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs:52
+msgid "I_mport"
+msgstr "_นำเข้า"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:106
-msgid "The selected audio was successfully written to the disc."
-msgstr "เพลงที่เลือกถูกเขียนลงแผ่นเรียบร้อย"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ImageFileChooserDialog.cs:39
+msgid "Select album cover image"
+msgstr ""
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:142
-msgid "Preparing to record"
-msgstr "กำลังเตรียมการเขียน"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ImageFileChooserDialog.cs:47
+msgid "All image files"
+msgstr "แฟ้มรูปภาพทั้งหมด"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:146
-msgid "Recording contents"
-msgstr "กำลังเขียนข้อมูล"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ImageFileChooserDialog.cs:54
+msgid "JPEG image files"
+msgstr "แฟ้มรูปภาพ JPEG"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:150
-msgid "Fixating disc"
-msgstr "กำลังปิดแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/ImageFileChooserDialog.cs:59
+msgid "PNG image files"
+msgstr "แฟ้มรูปภาพ PNG"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:168
-msgid "Waiting for Media"
-msgstr "กำลังรอแผ่น"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/OpenLocationDialog.cs:45
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/OpenLocationDialog.cs:103
+msgid "Open Location"
+msgstr "เปิดตำแหน่งแฟ้ม"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:172
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:175
-msgid "Insert blank disc"
-msgstr "กรุณาใส่แผ่นเปล่า"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/OpenLocationDialog.cs:54
+msgid "Browse..."
+msgstr "เรียกดู..."
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSessionRecorder.cs:173
-msgid "Please insert a blank disc for the write process."
-msgstr "กรุณาใส่แผ่นเปล่าสำหรับการเขียน"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/OpenLocationDialog.cs:64
+msgid "Enter the address of the file you would like to open:"
+msgstr "ป้อนที่อยู่ของแฟ้มที่คุณต้องการเปิด:"
 
-#: ../src/Banshee.Base/Banshee.Burner/BurnerSource.cs:225
-msgid "CD Session"
-msgstr "เซสชันซีดี"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/SeekDialog.cs:41
+msgid "Seek to Position"
+msgstr "ข้ามไปยังตำแหน่ง"
 
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:69
-msgid "Maximum"
-msgstr "สูงสุด"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:50
+msgid "_Media"
+msgstr "_สื่อ"
 
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:70
-msgid "High"
-msgstr "สูง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:53
+msgid "Import _Media..."
+msgstr "นำเข้า_สื่อ..."
 
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:71
-msgid "Medium"
-msgstr "ปานกลาง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:54
+msgid "Import media from a variety of sources"
+msgstr "นำเข้าสื่อจากแหล่งหลากหลาย"
 
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:72
-msgid "Low"
-msgstr "ต่ำ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:57
+msgid "Import _Playlist..."
+msgstr "นำเข้ารายการเ_ล่น..."
 
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:77
-#: ../src/Banshee.Base/Banshee.Cdrom.Gui/RecorderSpeedComboBox.cs:90
-#, csharp-format
-msgid "{0}x"
-msgstr "{0}x"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:58
+msgid "Import a playlist"
+msgstr "นำเข้ารายการเล่น"
 
-#: ../src/Banshee.Base/ComponentInitializer.cs:92
-msgid "Could not initialize component"
-msgstr "ไม่สามารถตั้งต้นองค์ประกอบ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:61
+#, fuzzy
+#| msgid "Rescan Library"
+msgid "Rescan Music Library"
+msgstr "ตรวจข้อมูลไลบรารีอีกครั้ง"
 
-#: ../src/Banshee.Base/BatchTranscoder.cs:110
-#: ../src/Banshee.Base/BatchTranscoder.cs:111
-msgid "Converting Files"
-msgstr "กำลังแปลงแฟ้ม"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:62
+#, fuzzy
+#| msgid "Rescan Library"
+msgid "Rescan the Music Library folder"
+msgstr "ตรวจข้อมูลไลบรารีอีกครั้ง"
 
-#: ../src/Banshee.Base/BatchTranscoder.cs:113
-msgid ""
-"Files are currently being converted to another audio format. Would you like "
-"to stop this?"
-msgstr "แฟ้มกำลังอยู่ระหว่างการแปลงไปเป็นฟอร์แมตอื่น คุณต้องการหยุดการแปลงหรือไม่?"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:67
+msgid "Open _Location..."
+msgstr "เปิด_ตำแหน่งแฟ้ม..."
 
-#: ../src/Banshee.Base/BatchTranscoder.cs:116
-msgid "Initializing Transcoder..."
-msgstr "กำลังตั้งต้นตัวแปลงรหัส..."
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:68
+msgid "Open a remote location for playback"
+msgstr "เปิดแฟ้มจากตำแหน่งในเครือข่ายเพื่อเล่นเพลง"
 
-#: ../src/Banshee.Base/Dap/DapCore.cs:100
-msgid "Cannot initialize DapCore because HalCore is not initialized"
-msgstr "ไม่สามารถตั้งต้น DapCore ได้ เพราะไม่ได้ตั้งต้น HalCore ไว้"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:71
+msgid "_Quit"
+msgstr "_ออก"
 
-#: ../src/Banshee.Base/Dap/Dap.cs:334
-#: ../src/Banshee.Base/Sources/DapSource.cs:375
-msgid "Device"
-msgstr "อุปกรณ์"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:72
+msgid "Quit Banshee"
+msgstr "ออกจาก Banshee"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:76
+msgid "_Edit"
+msgstr "แ_ก้ไข"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:79
+msgid "_Preferences"
+msgstr "_ปรับแต่ง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:80
+msgid "Modify your personal preferences"
+msgstr "ปรับแต่งค่าต่างๆ ของโปรแกรม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:84
+msgid "_Tools"
+msgstr "เ_ครื่องมือ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:88
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:134
+msgid "_Help"
+msgstr "_วิธีใช้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:91
+msgid "_Contents"
+msgstr "เนื้อ_หา"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:95
+msgid "_Web Resources"
+msgstr "ทรัพยากรในเ_ว็บ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:98
+msgid "Banshee _User Guide (Wiki)"
+msgstr "คู่_มือผู้ใช้ Banshee (วิกิ)"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:99
+msgid "Learn about how to use Banshee"
+msgstr "เรียนรู้วิธีใช้ Banshee"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:104
+#, fuzzy
+#| msgid "Metadata and Cover Art Searching"
+msgid "Advanced Collection Searching"
+msgstr "ค้นหาข้อมูลเพลงและภาพปกอัลบั้ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:105
+msgid "Learn advanced ways to search your media collection"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:110
+msgid "Banshee _Home Page"
+msgstr "_หน้าเว็บ Banshee"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:111
+msgid "Visit the Banshee Home Page"
+msgstr "ไปยังหน้าเว็บของ Banshee"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:116
+msgid "_Get Involved"
+msgstr "มีส่วน_ร่วม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:117
+msgid "Become a contributor to Banshee"
+msgstr "เข้าร่วมสมทบงานกับ Banshee"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:122
+msgid "_Version Information"
+msgstr "ข้อมูลรุ่_น..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:123
+msgid "View detailed version and configuration information"
+msgstr "ดูรายละเอียดของรุ่นและการตั้งค่าต่างๆ"
+
+#. Prompt user for location of the playlist.
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:178
+msgid "Import Playlist"
+msgstr "นำเข้ารายการเล่น"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:179
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:559
+msgid "Playlists"
+msgstr "รายการเล่น"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:67
+msgid "Play or pause the current item"
+msgstr "เล่นหรือพักรายการปัจจุบัน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:70
+msgid "_Next"
+msgstr "_ถัดไป"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:71
+msgid "Play the next item"
+msgstr "เล่นรายการถัดไป"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:74
+msgid "Pre_vious"
+msgstr "ก่อน_หน้า"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:75
+msgid "Play the previous item"
+msgstr "เล่นรายการก่อนหน้า"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:78
+msgid "Seek _To..."
+msgstr "เ_ลื่อนไปยัง..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:79
+msgid "Seek to a specific location in current item"
+msgstr "เลื่อนตำแหน่งที่เล่นรายการปัจจุบันไปยังตำแหน่งที่ระบุ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:83
+msgid "Jump to the currently playing item"
+msgstr "กระโดดข้ามไปยังรายการที่กำลังเล่น"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:87
+msgid "Restart the current item"
+msgstr "ตั้งต้นเล่นรายการปัจจุบันใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:92
+#, fuzzy
+#| msgid "Eject when finished"
+msgid "_Stop When Finished"
+msgstr "ดันแผ่นออกเมื่อเขียนเสร็จ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:93
+msgid "Stop playback after the current item finishes playing"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:99
+msgid "_Playback"
+msgstr "_ควบคุม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:190
+msgid "_Pause"
+msgstr "_พัก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs:202
+msgid "Sto_p"
+msgstr "หยุ_ด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:72
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:73
+msgid "Repeat"
+msgstr "เล่นซ้ำ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:78
+msgid "Repeat _Off"
+msgstr "_ปิดการเล่นซ้ำ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:79
+msgid "Do not repeat playlist"
+msgstr "ไม่ต้องเล่นเพลงในรายการเล่นซ้ำอีก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:83
+msgid "Repeat _All"
+msgstr "เล่นซ้ำ_ทั้งหมด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:84
+msgid "Play all songs before repeating playlist"
+msgstr "เล่นเพลงทั้งหมดในรายการเล่นแล้วเล่นซ้ำอีก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:88
+msgid "Repeat Singl_e"
+msgstr "เล่นซ้ำเฉพาะเ_พลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackRepeatActions.cs:89
+msgid "Repeat the current playing song"
+msgstr "เล่นเพลงที่กำลังเล่นซ้ำอีก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:79
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackShuffleActions.cs:80
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:83
+msgid "Shuffle"
+msgstr "สุ่ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:75
+msgid "_New Playlist"
+msgstr "_สร้างรายการเล่นใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:76
+msgid "Create a new empty playlist"
+msgstr "สร้างรายการเล่นรายการใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:79
+msgid "New _Smart Playlist..."
+msgstr "สร้างรายการเล่น_อัจฉริยะใหม่..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:80
+msgid "Create a new smart playlist"
+msgstr "สร้างรายการเล่นอัจฉริยะรายการใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:90
+msgid "Import to Library"
+msgstr "นำเข้าสู่ไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:91
+msgid "Import source to library"
+msgstr "นำเข้าแหล่งเพลงมายังไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:94
+msgid "Rename"
+msgstr "เปลี่ยนชื่อ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:97
+msgid "Export Playlist..."
+msgstr "ส่งออกรายการเล่น..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:98
+msgid "Export a playlist"
+msgstr "ส่งออกรายการเล่น"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:101
+msgid "Unmap"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:104
+msgid "Source Properties"
+msgstr "คุณสมบัติแหล่งเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:107
+msgid "Sort Children by"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:111
+#, fuzzy
+#| msgid "Source"
+msgid "Switch Source"
+msgstr "แหล่งเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:112
+msgid "Switch to a source by typing its name"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:115
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/PreferenceDialog.cs:50
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:85
+msgid "Preferences"
+msgstr "ปรับแต่ง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:116
+msgid "Edit preferences related to this source"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:120
+msgid "New _Smart Playlist"
+msgstr "สร้างรายการเล่น_อัจฉริยะใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:129
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:84
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:67
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:78
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:72
+msgid "Refresh"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:130
+msgid "Refresh this randomly sorted smart playlist"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:297
+#, fuzzy
+#| msgid "Do not repeat playlist"
+msgid "Could not export playlist"
+msgstr "ไม่ต้องเล่นเพลงในรายการเล่นซ้ำอีก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:426
+#, fuzzy, csharp-format
+#| msgid "Are you sure you want to permanently delete this song?"
+#| msgid_plural ""
+#| "Are you sure you want to permanently delete the selected {0} songs?"
+msgid "Are you sure you want to delete this {0}?"
+msgstr "คุณแน่ใจว่าต้องการลบเพลงนี้อย่างถาวรหรือไม่?"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs:469
+msgid "Separate by Type"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:70
+msgid "Select _All"
+msgstr "เลือก_ทั้งหมด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:71
+msgid "Select all tracks"
+msgstr "เลือกทุกเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:74
+msgid "Select _None"
+msgstr "เ_ลิกเลือกทั้งหมด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:75
+msgid "Unselect all tracks"
+msgstr "เลิกเลือกทุกเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:78
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:59
+#, fuzzy
+#| msgid "Reading library information"
+msgid "_Edit Track Information"
+msgstr "กำลังอ่านข้อมูลไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:79
+#, fuzzy
+#| msgid "Edit metadata on selected songs"
+msgid "Edit information on selected tracks"
+msgstr "แก้ไขข้อมูลเพลงที่เลือก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:82
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:252
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:117
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:159
+#, fuzzy
+#| msgid "{0} Properties"
+msgid "Properties"
+msgstr "ปรับแต่งค่าของ {0}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:83
+#, fuzzy
+#| msgid "Set rating for selected songs"
+msgid "View information on selected tracks"
+msgstr "ให้คะแนนเพลงที่เลือก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:87
+msgid "Play the selected item"
+msgstr "เล่นรายการที่เลือก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:90
+msgid "Add _to Playlist"
+msgstr "เ_พิ่มในรายการเล่น"
 
-#: ../src/Banshee.Base/Dap/Dap.cs:335
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:91
+msgid "Append selected items to playlist or create new playlist from selection"
+msgstr "เพิ่มรายการที่เลือกลงในรายการเล่น หรือสร้างรายการเล่นใหม่จากรายการที่เลือก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:96
+msgid "Create new playlist from selected tracks"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:100
+msgid "_Remove"
+msgstr "_ลบออก"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:101
+#, fuzzy
+#| msgid "Remove selected song(s) from library"
+msgid "Remove selected track(s) from this source"
+msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:104
+#, fuzzy
+#| msgid "Remove selection from library"
+msgid "Remove From _Library"
+msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:105
+#, fuzzy
+#| msgid "Remove selected song(s) from library"
+msgid "Remove selected track(s) from library"
+msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:108
+msgid "_Open Containing Folder"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:109
+msgid "Open the folder that contains the selected item"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:112
+#, fuzzy
+#| msgid "Delete Song(s) From Drive"
+msgid "_Delete From Drive"
+msgstr "ลบแฟ้มเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:113
+#, fuzzy
+#| msgid "Permanently delete selected song(s) from storage medium"
+msgid "Permanently delete selected item(s) from medium"
+msgstr "ลบเพลงที่เลือกออกจากสื่อเก็บอย่างถาวร"
+
+#. Translators: this is a verb (command), not a noun (things)
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:119
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:170
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/SearchEntry.cs:112
 #, csharp-format
-msgid "Synchronizing {0}"
-msgstr "กำลังปรับข้อมูลกับ {0} ให้ตรงกัน"
+msgid "_Search"
+msgstr "_ค้นหา"
 
-#: ../src/Banshee.Base/Dap/Dap.cs:339
-msgid "Waiting for transcoder..."
-msgstr "กำลังรอตัวแปลงรหัส..."
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:120
+msgid "Search for items matching certain criteria"
+msgstr "ค้นหารายการที่ตรงกับเงื่อนไขที่กำหนด"
 
-#: ../src/Banshee.Base/Dap/Dap.cs:427 ../src/Banshee.Base/Dap/Dap.cs:448
-msgid "Processing..."
-msgstr "กำลังประมวลผล..."
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:123
+msgid "By Matching _Album"
+msgstr "โดยค้นหา_อัลบั้ม"
 
-#. Translators: {0} is the name assigned to a Digital Audio Player by its owner
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:54
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:124
+msgid "Search all songs of this album"
+msgstr "ค้นหาเพลงทั้งหมดของอัลบั้มนี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:127
+msgid "By Matching A_rtist"
+msgstr "โดยค้นหาศิ_ลปิน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:128
+msgid "Search all songs of this artist"
+msgstr "ค้นหาเพลงทั้งหมดของศิลปินนี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:258
+#, fuzzy, csharp-format
+#| msgid "Delete {0}"
+msgid "_Delete From \"{0}\""
+msgstr "ลบ {0}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:464
+#, fuzzy
+#| msgid "Some songs could not be found."
+msgid "The folder could not be found."
+msgstr "หาเพลงบางเพลงไม่พบ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:465
+msgid "Please check that the track's location is accessible by the system."
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:535
 #, csharp-format
-msgid "{0} Properties"
-msgstr "ปรับแต่งค่าของ {0}"
+msgid "Are you sure you want to permanently delete this item?"
+msgid_plural ""
+"Are you sure you want to permanently delete the selected {0} items?"
+msgstr[0] "คุณแน่ใจหรือไม่ว่าต้องการลบรายการนี้อย่างถาวร?"
+msgstr[1] "คุณแน่ใจหรือไม่ว่าต้องการลบรายการที่เลือกไว้ {0} รายการนี้อย่างถาวร?"
 
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:78
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:81
-msgid "Device Name"
-msgstr "ชื่ออุปกรณ์"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:539
+msgid "If you delete the selection, it will be permanently lost."
+msgstr "ถ้าคุณลบรายการที่เลือก รายการก็จะสูญหายอย่างถาวร"
 
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:85
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:88
-msgid "Owner Name"
-msgstr "ชื่อเจ้าของ"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:542
+#, fuzzy, csharp-format
+#| msgid "Remove selection from library"
+msgid "Remove selection from {0}?"
+msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
 
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:93
-msgid "Volume Usage"
-msgstr "พื้นที่ใช้งาน"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs:545
+#, fuzzy, csharp-format
+#| msgid "Are you sure you want to remove the selected song from your library?"
+#| msgid_plural ""
+#| "Are you sure you want to remove the selected {0} songs from your library?"
+msgid "Are you sure you want to remove the selected item from your {1}?"
+msgid_plural ""
+"Are you sure you want to remove the selected {0} items from your {1}?"
+msgstr[0] "คุณแน่ใจว่าต้องการลบเพลงที่เลือกออกจากไลบรารีหรือไม่?"
+msgstr[1] "คุณแน่ใจว่าต้องการลบเพลง <b>({0})</b> เพลงที่เลือกออกจากไลบรารีหรือไม่?"
 
-#: ../src/Banshee.Base/Dap/DapPropertiesDialog.cs:105
-msgid "Advanced Details"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:53
+msgid "Com_pilation Album Artist:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:57
+msgid ""
+"Check this if this track is part of an album with tracks by various artists"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/AlbumArtistEntry.cs:59
+msgid ""
+"This value will affect how this album is sorted; if you enter 'Various "
+"Artists' then the album will located with other albums that start with 'V'."
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:44
+#, fuzzy
+#| msgid "Advanced Details"
+msgid "Basic Details"
 msgstr "รายละเอียดเพิ่มเติม"
 
-#: ../src/Banshee.Base/Gui/AboutDialog.cs:46
-msgid "Primary Development"
-msgstr "งานพัฒนาหลัก"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:69
+#, fuzzy
+#| msgid "Track _Count"
+msgid "Track _Title:"
+msgstr "_จำนวนเพลง"
 
-#: ../src/Banshee.Base/Gui/AboutDialog.cs:53
-msgid "Contributors"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:77
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all track artists to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:78
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Track _Artist:"
+msgstr "ความยาวเพลง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:86
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all compilation album artists to these values"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:106
+#, fuzzy
+#| msgid "Set all Albums to this value"
+msgid "Set all album titles to this value"
+msgstr "ตั้งอัลบั้มทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:107
+#, fuzzy
+#| msgid "Album Title"
+msgid "Albu_m Title:"
+msgstr "ชื่ออัลบั้ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:113
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all genres to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:114
+#, fuzzy
+#| msgid "_Genre"
+msgid "_Genre:"
+msgstr "_ประเภท"
+
+#. Translators: "of" is the word beteen a track/disc number and the total count.
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:124
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:164
+msgid "of"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:141
+#, fuzzy
+#| msgid "Automatically Set All Track Numbers"
+msgid "Automatically set track number and count"
+msgstr "ตั้งลำดับเพลงทั้งหมดโดยอัตโนมัติ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:144
+#, fuzzy
+#| msgid "Track _Number"
+msgid "Track _Number:"
+msgstr "_ลำดับเพลง"
+
+#. Catalog.GetString ("Automatically set disc number and count"),
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:166
+#, fuzzy
+#| msgid "Set all Track Counts to this value"
+msgid "Set all disc numbers and counts to these values"
+msgstr "ตั้งจำนวนเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:167
+#, fuzzy
+#| msgid "Disc name:"
+msgid "_Disc Number:"
+msgstr "ชื่อแผ่น:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:188
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all years to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:189
+#, fuzzy
+#| msgid "Year"
+msgid "_Year:"
+msgstr "ปี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:196
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all ratings to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/BasicTrackDetailsPage.cs:197
+#, fuzzy
+#| msgid "Rating"
+msgid "_Rating:"
+msgstr "คะแนนนิยม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:44
+msgid "Extra"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:50
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all composers to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:51
+msgid "C_omposer:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:57
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all conductors to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:58
+#, fuzzy
+#| msgid "Contributors"
+msgid "Con_ductor:"
 msgstr "ผู้ร่วมสมทบ"
 
-#: ../src/Banshee.Base/Gui/AboutDialog.cs:79
-msgid "Music Management and Playback for GNOME."
-msgstr "โปรแกรมเล่นและจัดการเพลงสำหรับ GNOME"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:69
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all groupings to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:70
+msgid "_Grouping:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:80
+#, fuzzy
+#| msgid "Set all Titles to this value"
+msgid "Set all beats per minute to this value"
+msgstr "ตั้งชื่อเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:81
+msgid "Bea_ts Per Minute:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:93
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all copyrights to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:94
+msgid "Copyrig_ht:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:100
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all licenses to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:101
+msgid "_License URI:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:110
+#, fuzzy
+#| msgid "Set all Genres to this value"
+msgid "Set all comments to this value"
+msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/ExtraTrackDetailsPage.cs:111
+msgid "Co_mment:"
+msgstr "ห_มายเหตุ:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/HelpPage.cs:69
+msgid "Help"
+msgstr "วิธีใช้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/LyricsPage.cs:46
+msgid "Lyrics"
+msgstr "เนื้อเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/PageNavigationEntry.cs:74
+msgid "Advance to the next track and edit its title"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:42
+#, fuzzy
+#| msgid "Importing"
+msgid "Sorting"
+msgstr "กำลังนำเข้า"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:52
+#, fuzzy
+#| msgid "Set all Titles to this value"
+msgid "Set all sort track titles to this value"
+msgstr "ตั้งชื่อเพลงทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:53
+msgid "Sort Track Title:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:60
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all sort track artists to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:61
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Sort Track Artist:"
+msgstr "ความยาวเพลง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:67
+#, fuzzy
+#| msgid "Set all Artists to this value"
+msgid "Set all sort album artists to this value"
+msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:68
+msgid "Sort Album Artist:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:74
+#, fuzzy
+#| msgid "Set all Albums to this value"
+msgid "Set all sort album titles to this value"
+msgstr "ตั้งอัลบั้มทั้งหมดเป็นค่านี้"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/SortingPage.cs:75
+#, fuzzy
+#| msgid "Album Title"
+msgid "Sort Album Title:"
+msgstr "ชื่ออัลบั้ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:159
+msgid "File Name:"
+msgstr "ชื่อแฟ้ม:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:160
+#, fuzzy
+#| msgid "Home Directory"
+msgid "Directory:"
+msgstr "โฟลเดอร์บ้าน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:161
+msgid "Full Path:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:167
+msgid "URI:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:176
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Duration:"
+msgstr "ความยาวเพลง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:179
+#, fuzzy
+#| msgid "Audio Disc:"
+msgid "Audio Bitrate:"
+msgstr "ซีดีเพลง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:181
+#, fuzzy
+#| msgid "Sample Rate:"
+msgid "Audio Sample Rate:"
+msgstr "อัตราการเก็บข้อมูล:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:183
+#, fuzzy
+#| msgid "Channels:"
+msgid "Audio Channels:"
+msgstr "ช่องสัญญาณ:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:185
+msgid "Bits Per Sample:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:190
+msgid "Video Dimensions:"
+msgstr ""
+
+#. Translators: {0} is the description of the codec
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:197
+#, csharp-format
+msgid "{0} Codec:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:202
+#, fuzzy
+#| msgid "Conversion Format:"
+msgid "Container Formats:"
+msgstr "ฟอร์แมตที่แปลง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:207
+msgid "Imported On:"
+msgstr "นำเข้าเมื่อ:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:209
+#, fuzzy
+#| msgid "Last Played"
+msgid "Last Played:"
+msgstr "เล่นล่าสุด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:211
+msgid "Last Skipped:"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:213
+#, fuzzy
+#| msgid "Track _Count"
+msgid "Play Count:"
+msgstr "_จำนวนเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:214
+#, fuzzy
+#| msgid "Track _Count"
+msgid "Skip Count:"
+msgstr "_จำนวนเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:215
+#, fuzzy
+#| msgid "Source"
+msgid "Score:"
+msgstr "แหล่งเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:221
+msgid "File Size:"
+msgstr "ขนาดแฟ้ม:"
 
-#: ../src/Banshee.Base/Gui/AboutDialog.cs:81
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/StatisticsPage.cs:222
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:61
+msgid "bytes"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+msgid "Track Editor"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:95
+#, fuzzy
+#| msgid "{0} Properties"
+msgid "Track Properties"
+msgstr "ปรับแต่งค่าของ {0}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:147
+#, fuzzy
+#| msgid "Play the previous song"
+msgid "Show the previous track"
+msgstr "เล่นเพลงก่อนหน้า"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:153
+msgid "Show the next track"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:183
+#, fuzzy
+#| msgid "Title"
+msgid "Title:"
+msgstr "ชื่อเพลง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:184
+#, fuzzy
+#| msgid "Artist"
+msgid "Artist:"
+msgstr "ศิลปิน"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:185
+msgid "Album:"
+msgstr "อัลบั้ม:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:309
+msgid "Sync all field _values"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:314
 msgid ""
-"Copyright © 2005-2006 Novell, Inc.\n"
-"Copyright © 2005 Aaron Bockover"
+"Apply the values of all common fields set for this track to all of the "
+"tracks selected in this editor"
 msgstr ""
-"สงวนลิขสิทธิ์ © 2005-2006 Novell, Inc.\n"
-"สงวนลิขสิทธิ์ © 2005 Aaron Bockover"
 
-#: ../src/Banshee.Base/Gui/AboutDialog.cs:86
-msgid "Banshee Wiki"
-msgstr "Banshee Wiki"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:413
+#, fuzzy, csharp-format
+#| msgid "Editing Song {0} of {1}"
+msgid "<i>Editing {0} of {1} items</i>"
+msgstr "แก้ไขข้อมูลเพลงที่ {0} จาก {1}"
 
-#: ../src/Banshee.Base/Gui/OpenLocationDialog.cs:53
-msgid "Browse..."
-msgstr "เรียกดู..."
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:675
+#, csharp-format
+msgid "Save the changes made to the open track?"
+msgid_plural "Save the changes made to {0} of {1} open tracks?"
+msgstr[0] ""
+msgstr[1] ""
 
-#: ../src/Banshee.Base/Gui/PreferencesDialog.cs:58
-msgid "Select library location"
-msgstr "เลือกตำแหน่งไลบรารี"
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:692
+msgid "Close _without Saving"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/TrackEditorDialog.cs:729
+#, fuzzy, csharp-format
+#| msgid "If you delete the selection, it will be permanently lost."
+msgid "If you don't save, changes from the last {0} will be permanently lost."
+msgstr "ถ้าคุณลบเพลงที่เลือกไว้ เพลงจะสูญหายอย่างถาวร"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:62
+msgid "_View"
+msgstr "มุ_มมอง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:65
+#, fuzzy
+#| msgid "Equalizer"
+msgid "_Equalizer"
+msgstr "ที่ปรับคลื่นเสียง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:66
+#, fuzzy
+#| msgid "Display the equalizer."
+msgid "View the graphical equalizer"
+msgstr "แสดงที่ปรับคลื่นเสียง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:72
+msgid "_Context Pane"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:73
+msgid "Show the context pane beneath the track list"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:80
+#, fuzzy
+#| msgid "Fullscreen"
+msgid "_Fullscreen"
+msgstr "เต็มจอ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:81
+#, fuzzy
+#| msgid "Toggle Fullscreen Mode"
+msgid "Enter or leave fullscreen mode"
+msgstr "เปิด-ปิดการแสดงแบบเต็มจอ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:86
+#, fuzzy
+#| msgid "Show Cover Art"
+msgid "Show Cover _Art"
+msgstr "แสดงปกอัลบั้ม"
 
-#: ../src/Banshee.Base/FileImportSource.cs:55
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs:87
+msgid "Toggle display of album cover art"
+msgstr "แสดงหรือซ่อนภาพปกอัลบั้ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TaskStatusIcon.cs:92
+msgid "Active Task Running"
+msgid_plural "Active Tasks Running"
+msgstr[0] ""
+msgstr[1] ""
+
+#. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
+#. are Podcast Name and Published Date, respectively;
+#. e.g. 'from BBtv published 7/26/2007'
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:523
+#, csharp-format
+msgid "{0}from{1} {2} {0}published{1} {3}"
+msgstr ""
+
+#. simply: "Chicago Public Radio" or whatever the artist name is
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:536
+#, fuzzy
+#| msgid "Unknown Title"
+msgid "Unknown Stream"
+msgstr "ไม่มีชื่อเพลง"
+
+#. Translators: {0} and {1} are markup so ignore them, {2} is the name of the radio station
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:539
+#, csharp-format
+msgid "{0}on{1} {2}"
+msgstr "{0}ที่{1} {2}"
+
+#. Translators: {0} is the "from {album} by {artist}" type string, and {1} is the "on {radio station name}" string
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:542
+#, csharp-format
+msgid "{0} {1}"
+msgstr "{0} {1}"
+
+#. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
+#. are Artist Name and Album Title, respectively;
+#. e.g. 'by Parkway Drive from Killing with a Smile'
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:578
+#, csharp-format
+msgid "{0}by{1} {2} {0}from{1} {3}"
+msgstr "{0}โดย{1} {2} {0}จาก{1} {3}"
+
+#. Translators: {0} and {1} are for markup so ignore them, {2} is for Album Title;
+#. e.g. 'from Killing with a Smile'
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:582
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:522
+#, csharp-format
+msgid "{0}from{1} {2}"
+msgstr "{0}จาก{1} {2}"
+
+#. Translators: {0} and {1} are for markup so ignore them, {2} is for Artist Name;
+#. e.g. 'by Parkway Drive'
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:586
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:526
+#, csharp-format
+msgid "{0}by{1} {2}"
+msgstr "{0}โดย{1} {2}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:138
+msgid "Stop Operation"
+msgstr "หยุดปฏิบัติการ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:139
+#, csharp-format
+msgid "Stop {0}"
+msgstr "หยุด {0}"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:142
+msgid "This operation is still performing work. Would you like to stop it?"
+msgstr "ปฏิบัติการนี้ยังคงดำเนินการอยู่ คุณต้องการหยุดหรือไม่?"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:144
+#, csharp-format
+msgid ""
+"The '{0}' operation is still performing work. Would you like to stop it?"
+msgstr "ปฏิบัติการ '{0}' ยังคงดำเนินการอยู่ คุณต้องการหยุดหรือไม่?"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:148
+msgid "Continue"
+msgstr "ทำต่อไป"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:149
+#, csharp-format
+msgid "Continue {0}"
+msgstr "ทำ {0} ต่อไป"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/UserJobTile.cs:184
+msgid "Stopping..."
+msgstr "กำลังหยุด..."
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:45
 msgid "Import Files to Library"
 msgstr "นำเข้าแฟ้มมายังไลบรารี"
 
-#: ../src/Banshee.Base/FileImportSource.cs:82
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:48
+#, fuzzy
+#| msgid "Local Files"
+msgid "Media Files"
+msgstr "แฟ้มในเครื่อง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:59
 msgid "Local Files"
 msgstr "แฟ้มในเครื่อง"
 
-#: ../src/Banshee.Base/FolderImportSource.cs:55
-msgid "Import Folder to Library"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:59
+#, fuzzy
+#| msgid "Local Files"
+msgid "Files"
+msgstr "แฟ้มในเครื่อง"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:63
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:67
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:82
+#, fuzzy
+#| msgid "Choose Columns"
+msgid "C_hoose Files"
+msgstr "เลือกคอลัมน์"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:81
+msgid "_Files to import:"
+msgstr "แ_ฟ้มที่จะนำเข้า:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:82
+#, fuzzy
+#| msgid "Select All"
+msgid "Select Files"
+msgstr "เลือกทั้งหมด"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:83
+msgid "(none selected)"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:43
+msgid "Import Folders to Library"
 msgstr "นำเข้าโฟลเดอร์มายังไลบรารี"
 
-#: ../src/Banshee.Base/FolderImportSource.cs:80
-msgid "Local Folder"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:53
+msgid "Local Folders"
 msgstr "โฟลเดอร์ในเครื่อง"
 
-#: ../src/Banshee.Base/GstTranscoder.cs:80
-msgid "Could not create transcoder"
-msgstr "ไม่สามารถสร้างตัวแปลงรหัส"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:53
+msgid "Folders"
+msgstr "โฟลเดอร์"
 
-#: ../src/Banshee.Base/HalCore.cs:97
-msgid "HAL could not be initialized"
-msgstr "ไม่สามารถตั้งต้น HAL ได้"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:57
+msgid "C_hoose Folders"
+msgstr "เ_ลือกโฟลเดอร์"
 
-#: ../src/Banshee.Base/HalCore.cs:104
-msgid "HAL context could not be created"
-msgstr "ไม่สามารถสร้าง context ของ HAL ได้"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:75
+msgid "_Folders to import:"
+msgstr "โ_ฟลเดอร์ที่จะนำเข้า:"
 
-#: ../src/Banshee.Base/HalCore.cs:105
-msgid "D-Bus may not be working or configured properly"
-msgstr "D-Bus อาจไม่ทำงานหรือไม่ได้ตั้งค่าไว้อย่างถูกต้อง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:76
+msgid "Select Folders"
+msgstr "เลือกโฟลเดอร์"
 
-#: ../src/Banshee.Base/HomeDirectoryImportSource.cs:58
-msgid "Home Directory"
-msgstr "โฟลเดอร์บ้าน"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:73
+msgid "<big><b>Import Media to Library</b></big>"
+msgstr "<big><b>นำเข้าสื่อมายังไลบรารี</b></big>"
 
-#: ../src/Banshee.Base/ImportManager.cs:88
-msgid "Importing Songs"
-msgstr "กำลังนำเข้าเพลง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:79
+#, fuzzy
+#| msgid ""
+#| "Your music library is empty. You may import new music into your library "
+#| "now, or choose to do so later."
+msgid ""
+"Your media library is empty. You may import new music and videos into your "
+"library now, or choose to do so later."
+msgstr ""
+"คุณไม่มีเพลงในไลบรารี คุณอาจนำเข้าเพลงใหม่ในไลบรารีตอนนี้หรือเลือกที่จะนำเข้าในภายหลังก็ได้"
 
-#: ../src/Banshee.Base/ImportManager.cs:89
-msgid "The import process is currently running. Would you like to stop it?"
-msgstr "กระบวนการนำเข้าเพลงกำลังทำงานอยู่ คุณต้องการหยุดหรือไม่?"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:89
+#, fuzzy
+#| msgid "Imported On:"
+msgid "Import _from:"
+msgstr "นำเข้าเมื่อ:"
 
-#: ../src/Banshee.Base/ImportManager.cs:91
-msgid "Scanning for songs"
-msgstr "กำลังตรวจหาเพลง"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:99
+msgid "Do not show this dialog again"
+msgstr "ไม่ต้องแสดงกล่องโต้ตอบนี้อีก"
 
-#: ../src/Banshee.Base/Library.cs:126
-msgid "Could not load track from library"
-msgstr "ไม่สามารถโหลดเพลงจากไลบรารี"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/ImportDialog.cs:130
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:82
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:385
+msgid "_Import"
+msgstr "_นำเข้า"
 
-#: ../src/Banshee.Base/NetworkDetect.cs:76
-msgid "Cannot connect to NetworkManager"
-msgstr "ไม่สามารถเชื่อมต่อไปยัง NetworkManager"
+#: ../src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs:69
+msgid "Videos From Photos Folder"
+msgstr ""
 
-#: ../src/Banshee.Base/NetworkDetect.cs:77
-msgid "An available, working network connection will be assumed"
-msgstr "จะพยายามใช้การเชื่อมต่อที่มีอยู่และทำงานได้"
+#: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileComboBox.cs:86
+msgid "No available profiles"
+msgstr ""
 
-#: ../src/Banshee.Base/PipelineProfile.cs:105
-msgid "Pipeline profile is empty."
-msgstr "โพรไฟล์ของไปป์ไลน์ว่างเปล่า"
+#: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs:74
+#, fuzzy
+#| msgid "Advanced Details"
+msgid "Advanced"
+msgstr "รายละเอียดเพิ่มเติม"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:111
-msgid "Pipeline profile does not have the correct number of components (7)"
-msgstr "โพรไฟล์ของไปป์ไลน์มีจำนวนข้อมูลไม่ถูกต้อง (ต้องมี 7 ชิ้น)"
+#: ../src/Core/Banshee.ThickClient/Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs:175
+#, fuzzy, csharp-format
+#| msgid "Configuration"
+msgid "Configuring {0}"
+msgstr "ตั้งค่า"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:121
-msgid "Pipeline profile does not have a lookup key"
-msgstr "โพรไฟล์ของไปป์ไลน์ไม่มีคีย์สำหรับเปิดหา"
+#: ../src/Core/Banshee.ThickClient/Banshee.Playlist.Gui/PlaylistExportDialog.cs:20
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Export Playlist"
+msgstr "เรียงลำดับรายการเล่น"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:125
-msgid "Pipeline profile does not have a display name"
-msgstr "โพรไฟล์ของไปป์ไลน์ไม่มีชื่อดิสเพลย์"
+#: ../src/Core/Banshee.ThickClient/Banshee.Playlist.Gui/PlaylistExportDialog.cs:29
+#, fuzzy
+#| msgid "Import"
+msgid "Export"
+msgstr "นำเข้า"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:130
-#, csharp-format
-msgid "Pipeline profile '{0}' does not have a file extension"
-msgstr "โพรไฟล์ของไปป์ไลน์ '{0}' ไม่มีส่วนขยาย"
+#: ../src/Core/Banshee.ThickClient/Banshee.Playlist.Gui/PlaylistExportDialog.cs:54
+#, fuzzy
+#| msgid "Output Format:"
+msgid "Select Format: "
+msgstr "ฟอร์แมตผลลัพธ์:"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:136
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/DefaultPreferenceWidgets.cs:104
+msgid "Select library location"
+msgstr "เลือกตำแหน่งไลบรารี"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/DefaultPreferenceWidgets.cs:117
+msgid "Reset"
+msgstr "คืนค่าเดิม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/DefaultPreferenceWidgets.cs:120
 #, csharp-format
-msgid "Pipeline profile '{0}' does not have a GStreamer element"
-msgstr "โพรไฟล์ของไปป์ไลน์ '{0}' ไม่มีอิลิเมนต์ของ GStreamer"
+msgid "Reset location to default ({0})"
+msgstr ""
+
+#. FIXME this shouldn't be hard-coded to 'Source:', but this is the only
+#. user of this code atm...
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/NotebookPage.cs:76
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:245
+msgid "Source:"
+msgstr "แหล่ง:"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/PreferenceDialog.cs:55
+#, fuzzy
+#| msgid "Could not create transcoder"
+msgid "Could not show preferences"
+msgstr "ไม่สามารถสร้างตัวแปลงรหัส"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Preferences.Gui/PreferenceDialog.cs:56
+#, fuzzy
+#| msgid "Some songs could not be found."
+msgid "The preferences service could not be found."
+msgstr "หาเพลงบางเพลงไม่พบ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:80
+#, fuzzy
+#| msgid "New Playlist"
+msgid "New Smart Playlist"
+msgstr "สร้างรายการเล่นใหม่"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:96
+#, fuzzy
+#| msgid "Playlist"
+msgid "Playlist _Name:"
+msgstr "รายการเล่น"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:108
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Predefined Smart Playlists"
+msgstr "เรียงลำดับรายการเล่น"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:171
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:119
+msgid "Open in editor"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs:120
+#, fuzzy
+#| msgid "Create a new preset"
+msgid "Create and save"
+msgstr "เพิ่มค่าตั้งสำเร็จ"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:110
+msgid "Browser on Left"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:111
+msgid "Show the artist/album browser to the left of the track list"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:114
+msgid "Browser on Top"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:115
+msgid "Show the artist/album browser above the track list"
+msgstr ""
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:120
+#, fuzzy
+#| msgid "Show Cover Art"
+msgid "Show Browser"
+msgstr "แสดงปกอัลบั้ม"
+
+#: ../src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs:121
+msgid "Show or hide the artist/album browser"
+msgstr ""
+
+#: ../src/Core/Banshee.WebBrowser/Banshee.WebSource/WebBrowserShell.cs:121
 #, csharp-format
+msgid "Loading {0}..."
+msgstr "กำลังเรียก {0}..."
+
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/DiscUsageDisplay.cs:189
 msgid ""
-"Pipeline profile '{0}' will be unavailable: GStreamer pipeline '{1}' could "
-"not be run"
+"Insert\n"
+"Disc"
 msgstr ""
-"จะไม่สามารถใช้โพรไฟล์ของไปป์ไลน์ '{0}' ได้: ไม่สามารถเรียกใช้งานไปป์ไลน์ '{1}' ของ "
-"GStreamer ได้"
+"ใส่\n"
+"แผ่น"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:203
-msgid "Cannot use internal bitrate. Use BuildPipeline(bitrate) instead."
-msgstr "ไม่สามารถใช้บิตเรตภายในได้ กรุณาใช้ BuildPipeline(bitrate) แทน"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/SearchEntry.cs:95
+msgid "Clear search"
+msgstr ""
 
-#: ../src/Banshee.Base/PipelineProfile.cs:223
-msgid ""
-"Cannot set internal bitrate. Must copy profile and set Bitrate on copy (new "
-"PipelineProfile(profile))"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/SeekSlider.cs:58
+msgid "Seek"
 msgstr ""
-"ไม่สามารถกำหนดบิตเรตภายในได้ โปรแกรมต้องคัดลอกโพรไฟล์และกำหนดบิตเรตผ่านการคัดลอก (new "
-"PipelineProfile(profile))"
 
-#. Translators: used to specify the bitrate for ripping
-#: ../src/Banshee.Base/PipelineProfile.cs:372
-msgid "at"
-msgstr "ที่"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/StreamPositionLabel.cs:148
+msgid "Idle"
+msgstr "ไม่ได้เล่น"
 
-#: ../src/Banshee.Base/PipelineProfile.cs:414
-msgid "No MP3-compatible encoders available"
-msgstr "ไม่มีตัวลงรหัสที่เข้ากันกับ MP3"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/StreamPositionLabel.cs:149
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/AmazonDownloadManager.cs:58
+#, fuzzy
+#| msgid "Loading..."
+msgid "Contacting..."
+msgstr "กำลังเรียก..."
 
-#: ../src/Banshee.Base/PlayerEngineCore.cs:101
-msgid "Default player engine"
-msgstr "กลไกเครื่องเล่นปริยาย"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/StreamPositionLabel.cs:159
+msgid "Buffering"
+msgstr "กำลังเตรียมข้อมูลลงที่พัก"
 
-#: ../src/Banshee.Base/PlayerEngineCore.cs:172
-msgid "Problem with Player Engine"
-msgstr "เกิดปัญหากับกลไกเครื่องเล่น"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/VolumeButton.cs:96
+#, fuzzy
+#| msgid "Volume Usage"
+msgid "Volume"
+msgstr "พื้นที่ใช้งาน"
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:52
-msgid "Banshee Plugins"
-msgstr "ปลั๊กอินของ Banshee"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/VolumeButton.cs:548
+msgid "Muted"
+msgstr ""
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:64
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:93
-msgid "Plugin Name"
-msgstr "ชื่อปลั๊กอิน"
+#: ../src/Core/Banshee.Widgets/Banshee.Widgets/VolumeButton.cs:550
+msgid "Full Volume"
+msgstr ""
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:90
-msgid "Overview"
-msgstr "ข้อมูล"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:101
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:102
+msgid "Device"
+msgstr "อุปกรณ์"
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:97
-msgid "Description"
-msgstr "รายละเอียด"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:102
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:104
+#, fuzzy
+#| msgid "Cancel Operation"
+msgid "Generation"
+msgstr "ยกเลิกปฏิบัติการ"
+
+#. FIXME
+#. AddDapProperty (Catalog.GetString ("Color"), "black");
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:107
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:105
+msgid "Capacity"
+msgstr ""
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:100
-msgid "Author(s)"
-msgstr "ผู้สร้าง"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:108
+#, fuzzy
+#| msgid "Unavailable"
+msgid "Available"
+msgstr "ไม่ปรากฏ"
+
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:109
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:106
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:141
+#, fuzzy
+#| msgid "Track _Number"
+msgid "Serial number"
+msgstr "_ลำดับเพลง"
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:105
-msgid "This plugin could not be initialized."
-msgstr "ไม่สามารถตั้งต้นปลั๊กอินนี้ได้"
+#. AddDapProperty (Catalog.GetString ("Produced on"), ipod_device.ProductionInfo.DisplayDate);
+#. AddDapProperty (Catalog.GetString ("Firmware"), ipod_device.FirmwareVersion);
+#. string [] capabilities = new string [ipod_device.ModelInfo.Capabilities.Count];
+#. ipod_device.ModelInfo.Capabilities.CopyTo (capabilities, 0);
+#. AddDapProperty (Catalog.GetString ("Capabilities"), String.Join (", ", capabilities));
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:116
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:113
+#, fuzzy
+#| msgid "Show Cover Art"
+msgid "Supports cover art"
+msgstr "แสดงปกอัลบั้ม"
 
-#: ../src/Banshee.Base/Plugins/PluginDialog.cs:193
-msgid "Configuration"
-msgstr "ตั้งค่า"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:117
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:114
+msgid "Supports photos"
+msgstr ""
 
-#: ../src/Banshee.Base/Source.cs:333
-#, csharp-format
-msgid "Delete {0}"
-msgstr "ลบ {0}"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:412
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:491
+#, fuzzy
+#| msgid "Track Duration:"
+msgid "Track duration is zero"
+msgstr "ความยาวเพลง:"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:50
-msgid "Eject CD"
-msgstr "ดันแผ่นซีดีออก"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:515
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:694
+msgid "Syncing iPod"
+msgstr "กำลังปรับข้อมูลกับไอพอดให้ตรงกัน"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:89
-msgid "Reading table of contents from CD..."
-msgstr "กำลังอ่านสารบัญจากซีดี..."
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:516
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:695
+#, fuzzy
+#| msgid "Preparing to record"
+msgid "Preparing to synchronize..."
+msgstr "กำลังเตรียมการเขียน"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:94
-msgid "Searching for CD metadata..."
-msgstr "กำลังค้นหาข้อมูลซีดี..."
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:519
+#, fuzzy, csharp-format
+#| msgid "Editing Song {0} of {1}"
+msgid "Adding track {0} of {1}"
+msgstr "แก้ไขข้อมูลเพลงที่ {0} จาก {1}"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:99
-msgid "Searching for CD cover art..."
-msgstr "กำลังค้นหาภาพปกซีดี..."
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:555
+#, fuzzy, csharp-format
+#| msgid "Importing {0} of {1}"
+msgid "Removing track {0} of {1}"
+msgstr "กำลังนำเข้า {0} จาก {1}"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:104
-msgid ""
-"Cannot search for CD metadata: there is no available Internet connection"
-msgstr "ไม่สามารถค้นหาข้อมูลซีดีได้: ไม่ได้เชื่อมต่ออินเทอร์เน็ต"
+#: ../src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:619
+#, fuzzy
+#| msgid "Writing a disc"
+msgid "Writing media database"
+msgstr "กำลังเขียนแผ่น"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:110
-msgid "Could not fetch metadata for CD."
-msgstr "ไม่สามารถหาข้อมูลเพลงสำหรับซีดีนี้"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapLibrarySync.cs:131
+#, fuzzy, csharp-format
+#| msgid "Synchronize {0}"
+msgid "Sync {0}"
+msgstr "ปรับข้อมูลกับ {0} ให้ตรงกัน"
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:191
-msgid "Invalid Selection"
-msgstr "การเลือกไม่ถูกต้อง"
+#. Note to translators: {0}, {1} and {2} will be replaced with numbers.
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapLibrarySync.cs:260
+#, csharp-format
+msgid "{0} to add, {1} to remove, {2} to update"
+msgstr ""
 
-#: ../src/Banshee.Base/Sources/AudioCdSource.cs:192
-msgid "You must select at least one track to import."
-msgstr "คุณต้องเลือกเพลงที่จะนำเข้าอย่างน้อยหนึ่งเพลง"
+#. This group source gives us a seperator for DAPs in the source view.
+#. We add it when we get our first dap source, and then remove it when
+#. we lose the last one.
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapService.cs:63
+msgid "Devices"
+msgstr "อุปกรณ์"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:107
-msgid "Synchronizing your Device, Please Wait..."
-msgstr "กำลังปรับข้อมูลกับอุปกรณ์ของคุณให้ตรงกัน กรุณารอสักครู่..."
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:176
+msgid "Device Properties"
+msgstr "คุณสมบัติอุปกรณ์"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:168
-msgid "Importing"
-msgstr "กำลังนำเข้า"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:200
+msgid "Product"
+msgstr "ผลิตภัณฑ์"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:170
-#, csharp-format
-msgid "You are currently importing from {0}. Would you like to stop it?"
-msgstr "คุณกำลังนำเข้าเพลงจาก {0} คุณต้องการหยุดหรือไม่?"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:201
+msgid "Vendor"
+msgstr "ผู้จำหน่าย"
 
-#. import_manager.UserEvent.Icon = GetIcon;
-#: ../src/Banshee.Base/Sources/DapSource.cs:172
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:274
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:284
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:142
 #, csharp-format
-msgid "Copying from {0}"
-msgstr "กำลังคัดลอกจาก {0}"
+msgid "Loading {0}"
+msgstr "กำลังโหลด {0}"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:173
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:275
-msgid "Scanning..."
-msgstr "กำลังตรวจข้อมูล..."
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:37
+msgid "Yes"
+msgstr "ใช่"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:286
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:393
-#, csharp-format
-msgid "Cannot import track from {0}"
-msgstr "ไม่สามารถนำเข้าเพลงจาก {0}"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:370
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellYesNo.cs:38
+msgid "No"
+msgstr "ไม่ใช่"
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:322
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:391
 #, csharp-format
-msgid "({0} Remaining)"
-msgstr "(เหลืออีก {0})"
+msgid ""
+"The {0} format is not supported by the device, and no converter was found to "
+"convert it"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:397
+msgid "File format conversion support is not available"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSource.cs:423
+#, fuzzy
+#| msgid "Converting Files"
+msgid "Error converting file"
+msgstr "กำลังแปลงแฟ้ม"
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:137
+msgid "Sync when first plugged in and when the libraries change"
+msgstr ""
 
-#: ../src/Banshee.Base/Sources/DapSource.cs:359
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:138
+msgid ""
+"Begin synchronizing the device as soon as the device is plugged in or the "
+"libraries change."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:141
+#, fuzzy
+#| msgid "Preferences"
+msgid "Sync Preferences"
+msgstr "ปรับแต่ง"
+
+#. singular form unused b/c we know it's > 1, but we still need GetPlural
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:365
 #, csharp-format
-msgid "Eject {0}"
-msgstr "ดัน {0} ออก"
+msgid "The sync operation will remove one track from your device."
+msgid_plural "The sync operation will remove {0} tracks from your device."
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:369
+#, fuzzy
+#| msgid "Are you sure you want to permanently delete this song?"
+#| msgid_plural ""
+#| "Are you sure you want to permanently delete the selected {0} songs?"
+msgid "Are you sure you want to continue?"
+msgstr "คุณแน่ใจว่าต้องการลบเพลงนี้อย่างถาวรหรือไม่?"
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/DapSync.cs:377
+msgid "Remove tracks"
+msgstr ""
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:51
-msgid "Music Library"
-msgstr "ไลบรารีเพลง"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapActions.cs:52
+msgid "Sync"
+msgstr "ปรับข้อมูลให้ตรงกัน"
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:115
-msgid "Sort Playlists"
-msgstr "เรียงลำดับรายการเล่น"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapInfoBar.cs:68
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:97
+msgid "Audio"
+msgstr "เพลง"
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:118
-msgid "Name Ascending"
-msgstr "ตามชื่อจากก่อนไปหลัง"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapInfoBar.cs:69
+msgid "Video"
+msgstr "วีดิทัศน์"
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:122
-msgid "Name Descending"
-msgstr "ตามชื่อจากหลังมาหน้า"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapInfoBar.cs:70
+msgid "Other"
+msgstr "อื่นๆ"
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:126
-msgid "Size Ascending"
-msgstr "ตามขนาดจากน้อยไปมาก"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapInfoBar.cs:71
+msgid "Free Space"
+msgstr "พื้นที่ว่าง"
 
-#: ../src/Banshee.Base/Sources/LibrarySource.cs:130
-msgid "Size Descending"
-msgstr "ตามขนาดจากมากไปน้อย"
+#. Translators: {0} is the name assigned to a Digital Audio Player by its owner
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:55
+#, csharp-format
+msgid "{0} Properties"
+msgstr "คุณสมบัติ {0}"
 
-#: ../src/Banshee.Base/Sources/LocalQueueSource.cs:53
-msgid "Local Queue"
-msgstr "คิวในเครื่อง"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:78
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:81
+msgid "Device name"
+msgstr "ชื่ออุปกรณ์"
 
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:61
-msgid "Delete Playlist"
-msgstr "ลบรายการเล่น"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:99
+msgid "Encode to"
+msgstr ""
 
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:65
-msgid "Playlist"
-msgstr "รายการเล่น"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:109
+msgid "Capacity used"
+msgstr ""
 
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:164
-msgid "Cannot Rename Playlist"
-msgstr "ไม่สามารถเปลี่ยนชื่อรายการเล่น"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/DapPropertiesDialog.cs:121
+msgid "Advanced details"
+msgstr "รายละเอียดเพิ่มเติม"
 
-#: ../src/Banshee.Base/Sources/PlaylistSource.cs:165
-msgid "A playlist with this name already exists. Please choose another name."
-msgstr "มีรายการเล่นชื่อนี้อยู่แล้ว กรุณาตั้งชื่อใหม่"
+#. Translators: {0} is the name of a library, eg 'Music' or 'Podcasts'
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/LibrarySyncOptions.cs:65
+#, csharp-format
+msgid "{0}:"
+msgstr "{0}:"
 
-#: ../src/Banshee.Base/TrackInfo.cs:399
-msgid "Unknown Title"
-msgstr "ไม่มีชื่อเพลง"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/LibrarySyncOptions.cs:70
+msgid "Manage manually"
+msgstr ""
 
-#: ../src/Banshee.Base/TrackInfoHeader.cs:103
-msgid "by"
-msgstr "โดย"
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/LibrarySyncOptions.cs:71
+#, fuzzy
+#| msgid "Synchronize Library"
+msgid "Sync entire library"
+msgstr "ปรับให้ตรงกับไลบรารี"
 
-#: ../src/Banshee.Base/TrackInfoHeader.cs:104
-msgid "from"
-msgstr "จาก"
+#. Translators: {0} is the name of a playlist
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/LibrarySyncOptions.cs:124
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/LibrarySyncOptions.cs:154
+#, fuzzy, csharp-format
+#| msgid "Copying from {0}"
+msgid "Sync from “{0}”"
+msgstr "กำลังคัดลอกจาก {0}"
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap.Gui/PurchasedMusicActions.cs:53
+msgid "Import Purchased Music"
+msgstr "นำเข้าเพลงที่ซื้อมา"
+
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:57
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:64
+msgid "Disconnect"
+msgstr "ตัดการเชื่อมต่อ"
 
-#: ../src/Banshee.Base/Utilities.cs:76
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:108
 #, csharp-format
-msgid "{0:0.00} GB"
-msgstr "{0:0.00} GB"
+msgid "Disconnecting {0}..."
+msgstr "กำลังตัดการเชื่อมต่อกับ {0}..."
 
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:54
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:55
+#: ../src/Dap/Banshee.Dap/Banshee.Dap/RemovableSource.cs:115
+#, fuzzy, csharp-format
+#| msgid "Could not encode file: {0}"
+msgid "Could not disconnect {0}: {1}"
+msgstr "ไม่สามารถลงรหัสแฟ้ม: {0}"
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:92
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:95
 msgid "Rebuilding Database"
 msgstr "กำลังสร้างฐานข้อมูลใหม่"
 
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:56
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:96
 msgid "Scanning iPod..."
 msgstr "กำลังตรวจข้อมูลไอพอด..."
 
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:90
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:131
 msgid "Processing Tracks..."
 msgstr "กำลังประมวลผลเพลง..."
 
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:137
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:147
+#, fuzzy
+#| msgid "Processing Tracks..."
+msgid "Ordering Tracks..."
+msgstr "กำลังประมวลผลเพลง..."
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:218
 msgid "Saving new database..."
 msgstr "กำลังบันทึกฐานข้อมูลใหม่..."
 
-#: ../src/Banshee.Dap/Ipod/DatabaseRebuilder.cs:144
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/DatabaseRebuilder.cs:230
 msgid "Error rebuilding iPod database"
 msgstr "เกิดข้อผิดพลาดขณะสร้างฐานข้อมูลไอพอดใหม่"
 
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:162
-msgid "Could not eject iPod"
-msgstr "ไม่สามารถปลดไอพอดออกจากระบบได้"
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:103
+msgid "Color"
+msgstr "สี"
 
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:170
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:189
-msgid "Synchronizing iPod"
-msgstr "กำลังปรับข้อมูลกับไอพอดให้ตรงกัน"
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:107
+msgid "Produced on"
+msgstr ""
 
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:171
-msgid "Pre-processing tracks"
-msgstr "กำลังประมวลผลเพลงขั้นต้น"
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:108
+msgid "Firmware"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:112
+msgid "Capabilities"
+msgstr ""
 
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:186
-msgid "Flushing to Disk (may take time)"
-msgstr "กำลังปล่อยข้อมูลลงดิสก์ (อาจใช้เวลา)"
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:680
+msgid "Out of space on device"
+msgstr "อุปกรณ์มีเนื้อที่ไม่พอ"
 
-#: ../src/Banshee.Dap/Ipod/IpodDap.cs:196
-msgid "Failed to synchronize iPod"
-msgstr "ไม่สามารถปรับข้อมูลกับไอพอดให้ตรงกันได้"
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:680
+msgid "Please manually remove some songs"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:724
+msgid "Updating..."
+msgstr "กำลังปรับข้อมูล..."
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:59
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/IpodSource.cs:728
+msgid "Flushing to disk..."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:61
 msgid "Unable to read your iPod"
 msgstr "ไม่สามารถอ่านไอพอดของคุณได้"
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:82
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:77
+msgid ""
+"You have used this iPod with a version of iTunes that saves a version of the "
+"song database for your iPod that is too new for Banshee to recognize.\n"
+"\n"
+"Banshee can rebuild your database, but you might lose your settings and all "
+"the content in the device (be sure to backup your data first). Using Banshee "
+"and iTunes with the same iPod is not recommended."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:88
+msgid "Learn more about Banshee's iPod support"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:96
+msgid ""
+"An iPod database could not be found on this device.\n"
+"\n"
+"Banshee can build a new database for you."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:104
 msgid "What is the reason for this?"
 msgstr "อะไรคือสาเหตุ?"
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:97
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:117
+msgid "Your iPod is mounted read only. Banshee can not restore your iPod."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:125
 msgid "Rebuild iPod Database..."
 msgstr "กำลังสร้างฐานข้อมูลไอพอดใหม่..."
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:105
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:133
 msgid "Confirm Rebuild iPod Database"
 msgstr "ยืนยันการสร้างฐานข้อมูลไอพอดใหม่"
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:111
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:139
 msgid ""
 "Rebuilding your iPod database may take some time. Also note that any "
 "playlists you have on your iPod will be lost.\n"
@@ -1704,732 +4895,3439 @@ msgstr ""
 "\n"
 "ยืนยันที่จะสร้างฐานข้อมูลไอพอดของคุณใหม่หรือไม่?"
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:116
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:143
 msgid "Rebuild Database"
 msgstr "สร้างฐานข้อมูลใหม่"
 
-#: ../src/Banshee.Dap/Ipod/UnsupportedDatabaseView.cs:128
+#: ../src/Dap/Banshee.Dap.Ipod/Banshee.Dap.Ipod/UnsupportedDatabaseView.cs:157
 msgid "Rebuilding iPod Database..."
 msgstr "กำลังสร้างฐานข้อมูลไอพอดใหม่..."
 
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:99
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:101
-msgid "Vendor"
-msgstr "ผู้ผลิต"
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/AmazonMp3GroupSource.cs:43
+msgid "Purchased Music"
+msgstr ""
 
-#. Console.WriteLine(Catalog.GetString("Cannot Import") + ": {0}", args.FileName);
-#. Console.WriteLine(Catalog.GetString("Cannot Import: {0} ({1}, {2})"),
-#. args.FileName, e.GetType(), e.Message);
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:166
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:170
-#: ../src/PlayerInterface.cs:1806
-msgid "Scanning"
-msgstr "กำลังตรวจข้อมูล"
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/MassStorageDevice.cs:87
+msgid "Rockbox Device"
+msgstr "อุปกรณ์ Rockbox"
+
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/MassStorageSource.cs:114
+#, fuzzy, csharp-format
+#| msgid "Audioscrobbler"
+msgid "Audio Folder"
+msgid_plural "Audio Folders"
+msgstr[0] "Audioscrobbler"
+msgstr[1] "Audioscrobbler"
+
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/MassStorageSource.cs:121
+#, fuzzy, csharp-format
+#| msgid "Local Folder"
+msgid "Video Folder"
+msgid_plural "Video Folders"
+msgstr[0] "โฟลเดอร์ในเครื่อง"
+msgstr[1] "โฟลเดอร์ในเครื่อง"
+
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/MassStorageSource.cs:127
+msgid "Required Folder Depth"
+msgstr ""
 
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:339
-msgid "Copying Songs"
-msgstr "กำลังคัดลอกเพลง"
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/MassStorageSource.cs:130
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Supports Playlists"
+msgstr "เรียงลำดับรายการเล่น"
+
+#: ../src/Dap/Banshee.Dap.MassStorage/Banshee.Dap.MassStorage/WebOSDevice.cs:189
+#, fuzzy
+#| msgid "Removing Songs"
+msgid "Ringtones"
+msgstr "กำลังลบเพลง"
+
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:82
+msgid "Error Initializing MTP Device Support"
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:83
+msgid ""
+"There was an error intializing MTP device support.  See http://www.banshee-"
+"project.org/Guide/DAPs/MTP for more information."
+msgstr ""
+
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:142
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/VersionInformationDialog.cs:66
+msgid "Version"
+msgstr "รุ่น"
 
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:340
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:144
+msgid "Battery level"
+msgstr "ระดับแบตเตอรี่"
+
+#. user_event.Progress = (double)current / total;
+#. Translators: {0} is the name of the MTP audio device (eg Gabe's Zen Player), {1} is the
+#. track currently being loaded, and {2} is the total # of tracks that will be loaded.
+#: ../src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:160
 #, csharp-format
-msgid "Copying {0} of {1}"
-msgstr "กำลังคัดลอก {0} จาก {1}"
+msgid "Loading {0} - {1} of {2}"
+msgstr "กำลังโหลด {0} - {1} จาก {2}"
 
-#: ../src/Banshee.Dap/MassStorage/MassStorageDap.cs:371
-msgid "Audio Device"
-msgstr "อุปกรณ์เสียง"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/AmazonDownloadManager.cs:57
+msgid "Amazon MP3 Purchases"
+msgstr "ซื้อ MP3 จาก Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:128
-msgid ": Found"
-msgstr ": พบ"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/AmazonMp3DownloaderService.cs:53
+msgid "Amazon MP3s"
+msgstr "MP3 จาก Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:129
-msgid "Reading library information"
-msgstr "กำลังอ่านข้อมูลไลบรารี"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/AmazonMp3DownloaderService.cs:54
+msgid "Songs purchased from the Amazon MP3 Store"
+msgstr "เพลงที่ซื้อจากร้าน MP3 ของ Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:139
-msgid "Loading device"
-msgstr "กำลังโหลดอุปกรณ์"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:40
+msgid "Download Amazon MP3 Purchase"
+msgstr "ดาวน์โหลดรายการซื้อ MP3 จาก Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:143
-msgid "Done"
-msgstr "เสร็จแล้ว"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:42
+msgid "Amazon MP3 Files"
+msgstr "แฟ้ม MP3 จาก Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:144
-msgid ": Ready for use"
-msgstr ": พร้อมใช้งาน"
+#: ../src/Extensions/Banshee.AmazonMp3/Banshee.AmazonMp3/ImportSource.cs:63
+msgid "Amazon MP3 Purchase"
+msgstr "รายการซื้อ MP3 จาก Amazon"
 
-#: ../src/Banshee.Dap/Mtp/MtpDap.cs:193 ../src/Banshee.Dap/Mtp/MtpDap.cs:226
-#: ../src/Banshee.Dap/Njb/NjbDap.cs:238 ../src/Banshee.Dap/Njb/NjbDap.cs:250
-msgid "Synchronizing Device"
-msgstr "กำลังปรับข้อมูลกับอุปกรณ์ให้ตรงกัน"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSource.cs:42
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:39
+msgid "Amazon MP3 Store"
+msgstr "ร้าน MP3 ของ Amazon"
 
-#: ../src/Banshee.Dap/Njb/NjbDap.cs:145
-msgid "Cannot read device"
-msgstr "ไม่สามารถอ่านอุปกรณ์ได้"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:57
+msgid "Country"
+msgstr "ประเทศ"
 
-#: ../src/Banshee.Dap/Njb/NjbDap.cs:250
-msgid "Removing Songs"
-msgstr "กำลังลบเพลง"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:60
+msgid "Which Amazon MP3 storefront to use by default."
+msgstr "หน้าร้าน MP3 ที่จะใช้โดยปริยายของ Amazon"
 
-#: ../src/Banshee.Dap/Njb/NjbDap.cs:348
-msgid "Device Error"
-msgstr "ข้อผิดพลาดเกี่ยวกับอุปกรณ์"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:88
+msgid "Automatic (Geo IP detection)"
+msgstr "อัตโนมัติ (ตรวจสอบพิกัดภูมิศาสตร์ของไอพี)"
 
-#: ../src/Banshee.Dap/Njb/NjbDap.cs:349
-msgid "Could not set the owner of the device."
-msgstr "ไม่สามารถกำหนดเจ้าของอุปกรณ์ได้"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:90
+msgid "France (amazon.fr)"
+msgstr "ฝรั่งเศส (amazon.fr)"
 
-#: ../src/Banshee.MediaEngine/Gstreamer/GstPlayerEngine.cs:64
-msgid "Could not initialize GStreamer library"
-msgstr "ไม่สามารถตั้งต้นไลบรารี GStreamer"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:91
+msgid "Germany, Switzerland, Austria (amazon.de)"
+msgstr "เยอรมนี, สวิตเซอร์แลนด์, ออสเตรีย (amazon.de)"
 
-#: ../src/Banshee.MediaEngine/Gstreamer/GstPlayerEngine.cs:142
-msgid "Unknown Error"
-msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุ"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:92
+msgid "Japan (amazon.co.jp)"
+msgstr "ญี่ปุ่น (amazon.co.jp)"
 
-#: ../src/Banshee.MediaEngine/Gstreamer/GstPlayerEngine.cs:164
-#: ../src/Banshee.Widgets/StreamPositionLabel.cs:81
-msgid "Buffering"
-msgstr "กำลังเตรียมข้อมูลลงที่พัก"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:93
+msgid "United Kingdom (amazon.co.uk)"
+msgstr "สหราชอาณาจักร (amazon.co.uk)"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:61
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:142
-msgid "Audioscrobbler Reporting"
-msgstr "รายงานสถิติไปยัง Audioscrobbler"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreSourcePreferences.cs:94
+msgid "United States (amazon.com)"
+msgstr "สหรัฐอเมริกา (amazon.com)"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:73
-msgid "Create an account"
-msgstr "สร้างบัญชีผู้ใช้"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:43
+#, csharp-format
+msgid "Search the Amazon MP3 Store"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:77
-msgid "Join the Banshee group"
-msgstr "เข้าร่วมกับกลุ่ม Banshee"
+#: ../src/Extensions/Banshee.AmazonMp3.Store/Banshee.AmazonMp3.Store/StoreWebBrowserShell.cs:45
+msgid "How Your Purchases Support GNOME"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:91
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:113
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:114
-msgid "Enable song reporting"
-msgstr "เปิดใช้การรายงานสถิติเพลง"
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:55
+#, fuzzy
+#| msgid "Open Location"
+msgid "Open Book"
+msgstr "เปิดตำแหน่งแฟ้ม"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:101
-msgid "Last.fm Username"
-msgstr "ชื่อผู้ใช้ Last.fm"
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:56
+msgid "Merge Discs..."
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerConfigDialog.cs:102
-msgid "Last.fm Password"
-msgstr "รหัสผ่าน Last.fm"
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:61
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:65
+#, fuzzy
+#| msgid "Reset"
+msgid "Resume"
+msgstr "คืนค่าเดิม"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:58
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:61
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:65
+msgid "Resume playback of this audiobook"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:138
+#, csharp-format
+msgid "Merge the {0} selected discs into one book?"
+msgid_plural "Merge the {0} selected discs into one book?"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:143
 msgid ""
-"Your profile page on Last.fm is automatically updated whenever you listen to "
-"music. It lets others see what you're listening to right now, and shows "
-"charts of your listening history."
+"This will ensure the disc numbers are all set properly, and then set the "
+"author and book title for all tracks on all these discs to the values below"
 msgstr ""
-"หน้าผู้ใช้บน Last.fm ของคุณจะถูกปรับข้อมูลโดยอัตโนมัติเมื่อคุณฟังเพลง "
-"ผู้ใช้คนอื่นสามารถดูว่าคุณกำลังฟังเพลงอะไรอยู่ และดูรายการเพลงที่คุณเคยฟังได้"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:95
-msgid "Audioscrobbler"
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:152
+msgid "Author:"
+msgstr "ผู้สร้าง:"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs:159
+#, fuzzy
+#| msgid "Title"
+msgid "Book Title:"
+msgstr "ชื่อเพลง"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:57
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:92
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:87
+msgid "Author"
+msgstr "ผู้สร้าง"
+
+#. Translators: This means the first letter of the author's name
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:63
+#, fuzzy
+#| msgid "Audio CD Core Initialized"
+msgid "Author Initial"
+msgstr "ตั้งต้นระบบแกนกลางสำหรับซีดีเพลงเรียบร้อยแล้ว"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookFileNamePattern.cs:68
+#, fuzzy
+#| msgid "Title"
+msgid "Book Title"
+msgstr "ชื่อเพลง"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:68
+msgid "Audiobooks, etc"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:75
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search your audiobooks"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:145
+#, csharp-format
+msgid "{0} book"
+msgid_plural "{0} books"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs:149
+#, fuzzy
+#| msgid "Audioscrobbler"
+msgid "Audiobooks Folder"
 msgstr "Audioscrobbler"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:96
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:108
-msgid "Configure the Audioscrobbler plugin"
-msgstr "ตั้งค่าปลั๊กอิน Audioscrobbler"
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/BookView.cs:114
+#, fuzzy
+#| msgid "_Playback"
+msgid "Resume Playback"
+msgstr "_ควบคุม"
+
+#: ../src/Extensions/Banshee.Audiobook/Banshee.Audiobook/BookView.cs:120
+msgid "No Bookmark Set"
+msgstr ""
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:76
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:55
+msgid "Audio CD"
+msgstr "ซีดีเพลง"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdDiscModel.cs:102
+#, csharp-format
+msgid "Track {0}"
+msgstr "เพลงที่ {0}"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:121
+msgid "Importing Audio CD"
+msgstr "กำลังนำเข้าซีดีเพลง"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:122
+msgid "Initializing Drive"
+msgstr "กำลังตั้งต้นใช้งานไดรว์"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:99
-msgid "Visit user profile page"
-msgstr "ไปยังหน้าผู้ใช้"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:124
+#, csharp-format
+msgid ""
+"<i>{0}</i> is still being imported into the music library. Would you like to "
+"stop it?"
+msgstr "<i>{0}</i> ยังคงอยู่ระหว่างการนำเข้าสู่ไลบรารีเพลง คุณต้องการหยุดหรือไม่?"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdRipper.cs:254
+msgid "Cannot Import CD"
+msgstr "ไม่สามารถนำเข้าเพลงจากซีดีได้"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:100
-msgid "Visit your Audioscrobbler profile page"
-msgstr "ไปยังหน้าข้อมูลผู้ใช้ของคุณใน Audioscrobbler"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:233
+msgid "Audio CDs"
+msgstr "ซีดีเพลง"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:103
-msgid "Visit group page"
-msgstr "ไปยังหน้ากลุ่มผู้ใช้"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:235
+msgid "Audio CD Importing"
+msgstr "การนำเข้าจากซีดีเพลง"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:104
-msgid "Visit the Banshee last.fm group page"
-msgstr "ไปยังหน้าของกลุ่ม Banshee ใน Last.fm"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:238
+#, fuzzy
+#| msgid "Import Source"
+msgid "_Import format"
+msgstr "นำเข้าแหล่ง"
 
-#: ../src/Banshee.Plugins/Audioscrobbler/AudioscrobblerPlugin.cs:107
-msgid "Configure..."
-msgstr "ตั้งค่า..."
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:242
+msgid "_Automatically import audio CDs when inserted"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/audioscrobbler.schemas.in.h:1
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:243
 msgid ""
-"Allow engine to submit song data to last.fm in the Audioscrobbler plugin"
-msgstr "อนุญาตให้ส่งข้อมูลเพลงไปยัง Last.fm โดยผ่านปลั๊กอิน Audioscrobbler"
+"When an audio CD is inserted, automatically begin importing it if metadata "
+"can be found and it is not already in the library."
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/audioscrobbler.schemas.in.h:2
-msgid "Enable the Audioscrobbler plugin"
-msgstr "เปิดใช้งานปลั๊กอิน Audioscrobbler"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:247
+msgid "_Eject when done importing"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/audioscrobbler.schemas.in.h:3
-msgid "Your last.fm password"
-msgstr "รหัสผ่าน Last.fm ของคุณ"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:248
+msgid "When an audio CD has been imported, automatically eject it."
+msgstr ""
 
-#: ../src/Banshee.Plugins/Audioscrobbler/audioscrobbler.schemas.in.h:4
-msgid "Your last.fm username"
-msgstr "ชื่อผู้ใช้ Last.fm ของคุณ"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:251
+msgid "Use error correction when importing"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Daap/DaapConfigPage.cs:50
-msgid "Music Sharing"
-msgstr "การแบ่งปันเพลง"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:252
+msgid ""
+"Error correction tries to work around problem areas on a disc, such as "
+"surface scratches, but will slow down importing substantially."
+msgstr ""
 
-#: ../src/Banshee.Plugins/Daap/DaapConfigPage.cs:53
-msgid "Share my music library with others"
-msgstr "แบ่งปันไลบรารีเพลงของฉันกับคนอื่นๆ"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:320
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:440
+msgid "Import CD"
+msgstr "นำเข้าซีดี"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:321
+msgid "Import this audio CD to the library"
+msgstr "นำเข้าซีดีเพลงนี้ไปยังไลบรารี"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:327
+msgid "Duplicate CD"
+msgstr "ทำสำเนาซีดี"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdService.cs:328
+msgid "Duplicate this audio CD"
+msgstr "ทำสำเนาซีดีเพลงแผ่นนี้"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:130
+msgid "Searching for CD metadata..."
+msgstr "กำลังค้นหาข้อมูลซีดี..."
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:163
+msgid "Could not fetch metadata for CD."
+msgstr "ไม่สามารถหาข้อมูลเพลงสำหรับซีดีนี้"
 
-#: ../src/Banshee.Plugins/Daap/DaapConfigPage.cs:76
-msgid "Share name:"
-msgstr "ชื่อแหล่งใช้ร่วม:"
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:191
+msgid "Automatic import off since this album is already in the Music Library."
+msgstr ""
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:214
+msgid "Could not import CD"
+msgstr "ไม่สามารถนำเข้าซีดีได้"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:231
+msgid "Could not duplicate audio CD"
+msgstr "ไม่สามารถทำสำเนาซีดีเพลง"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:363
+msgid "Ejecting audio CD..."
+msgstr "กำลังดันแผ่นซีดีเพลงออก..."
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:381
+#, csharp-format
+msgid "Could not eject audio CD: {0}"
+msgstr "ไม่สามารถดันแผ่นซีดีเพลงออกได้: {0}"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:414
+msgid "Audio CD Preferences"
+msgstr "ปรับแต่งซีดีเพลง"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:415
+msgid "Eject Disc"
+msgstr "ดันแผ่นออก"
+
+#: ../src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs:439
+#, csharp-format
+msgid "Import ‟{0}”"
+msgstr "นำเข้า ‟{0}”"
 
-#: ../src/Banshee.Plugins/Daap/DaapCore.cs:73
-msgid "Banshee Music Share"
-msgstr "แหล่งใช้เพลงร่วมของ Banshee"
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmDetectJob.cs:64
+msgid "Detecting BPM"
+msgstr "กำลังตรวจหา BPM"
 
-#: ../src/Banshee.Plugins/Daap/DaapLoginDialog.cs:48
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:91
+msgid "D_etect"
+msgstr "ต_รวจหา"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:103
+msgid "T_ap"
+msgstr "เ_คาะ"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:111
+msgid "Have Banshee attempt to auto-detect the BPM of this song"
+msgstr "ให้ Banshee พยายามตรวจหาจังหวะต่อนาที (BPM) ของเพลงนี้"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:113
+msgid "Play this song"
+msgstr "เล่นเพลงนี้"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs:116
+msgid "Tap this button to the beat to set the BPM for this song manually"
+msgstr "เคาะปุ่มนี้ตามจังหวะเพลงเพื่อกำหนดอัตราจังหวะต่อนาที (BPM) ของเพลงนี้เอง"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:148
+msgid "_Automatically detect BPM for all songs"
+msgstr "ตรวจหา BMP ของทุกเพลงโดย_อัตโนมัติ"
+
+#: ../src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs:149
+msgid ""
+"Detect beats per minute (BPM) for all songs that don't already have a value "
+"set"
+msgstr "ตรวจหาอัตราจังหวะต่อนาที (beats per minute, BPM) ของทุกเพลงที่ยังไม่มีการกำหนดค่า"
+
+#: ../src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtJob.cs:58
+msgid "Downloading Cover Art"
+msgstr "กำลังดาวน์โหลดปกอัลบั้ม"
+
+#: ../src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtJob.cs:128
+#, csharp-format
+msgid "{0} - {1}"
+msgstr "{0} - {1}"
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapContainerSource.cs:42
+msgid "Shared Music"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:73
+msgid "Disconnected from music share"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:74
+msgid "Unable to connect to music share"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:88
+#, fuzzy
+#| msgid "Track"
+msgid "Back"
+msgstr "เพลงที่"
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:101
+msgid ""
+"iTunes® 7 introduced new compatibility issues and currently only works with "
+"other iTunes® 7 clients.\n"
+"\n"
+"No third-party clients can connect to iTunes® music shares anymore. This is "
+"an intentional limitation by Apple in iTunes® 7 and we apologize for the "
+"unfortunate inconvenience."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:111
+msgid "Common reasons for connection failures:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:117
+msgid "The provided login credentials are invalid"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:118
+msgid "The login process was canceled"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:119
+msgid "Too many users are connected to this share"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:121
+msgid "You are no longer connected to this music share"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:125
+msgid "Try connecting again"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapErrorView.cs:139
+msgid "The music share is hosted by iTunes® 7"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapLoginDialog.cs:47
 msgid "Login to Music Share"
 msgstr "ล็อกอินเข้าสู่แหล่งเพลงใช้ร่วม"
 
-#: ../src/Banshee.Plugins/Daap/DaapLoginDialog.cs:81
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapLoginDialog.cs:80
 msgid "Authentication Required"
 msgstr "ต้องการรหัสผ่าน"
 
-#: ../src/Banshee.Plugins/Daap/DaapLoginDialog.cs:105
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapLoginDialog.cs:104
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginForm.cs:54
 msgid "Username:"
 msgstr "ชื่อผู้ใช้:"
 
-#: ../src/Banshee.Plugins/Daap/DaapLoginDialog.cs:113
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapLoginDialog.cs:112
 msgid "Password:"
 msgstr "รหัสผ่าน:"
 
-#: ../src/Banshee.Plugins/Daap/DaapLoginDialog.cs:124
+#. Translators: this is a verb used as a button label, not a noun
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapLoginDialog.cs:124
 msgid "Login"
 msgstr "ล็อกอิน"
 
-#: ../src/Banshee.Plugins/Daap/daap.schemas.in.h:1
-msgid "Allow others to browse and listen to your music from other DAAP clients"
-msgstr "อนุญาตให้คนอื่นๆ เรียกดูและฟังเพลงของคุณผ่านไคลเอนต์ DAAP ได้"
-
-#: ../src/Banshee.Plugins/Daap/daap.schemas.in.h:2
-msgid "Enable DAAP Server support"
-msgstr "เปิดใช้การสนับสนุนเซิร์ฟเวอร์ DAAP"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapResolverJob.cs:50
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:106
+#, fuzzy, csharp-format
+#| msgid "Continue {0}"
+msgid "Connecting to {0}"
+msgstr "ทำ {0} ต่อไป"
 
-#: ../src/Banshee.Plugins/Daap/daap.schemas.in.h:3
-msgid "Enable the DAAP Music Sharing plugin"
-msgstr "เปิดใช้ปลั๊กอินแบ่งปันเพลงผ่าน DAAP"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs:178
+msgid "Add Remote DAAP Server"
+msgstr ""
 
-#: ../src/Banshee.Plugins/Daap/daap.schemas.in.h:4
-msgid "Name of DAAP server share"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs:179
+#, fuzzy
+#| msgid "Name of DAAP server share"
+msgid "Add a new remote DAAP server"
 msgstr "ชื่อของแหล่งเพลงที่จะเปิดใช้ร่วมสำหรัับเซิร์ฟเวอร์ DAAP"
 
-#: ../src/Banshee.Plugins/Daap/DaapSource.cs:70
-msgid "Cannot login to DAAP share"
-msgstr "ไม่สามารถล็อกอินเข้าแหล่งเพลงใช้ร่วมของ DAAP"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:60
+#, fuzzy
+#| msgid "Music Sharing"
+msgid "Music Share"
+msgstr "การแบ่งปันเพลง"
 
-#: ../src/Banshee.Plugins/Daap/DaapSource.cs:132
-msgid "Disconnect"
-msgstr "ตัดการเชื่อมต่อ"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:202
+#, csharp-format
+msgid "Logging in to {0}."
+msgstr ""
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:61
-msgid "Metadata and Cover Art Searching"
-msgstr "ค้นหาข้อมูลเพลงและภาพปกอัลบั้ม"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:238
+#, csharp-format
+msgid "Loading {0} track"
+msgid_plural "Loading {0} tracks"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/DaapSource.cs:270
+#, fuzzy
+#| msgid "Sort Playlists"
+msgid "Loading playlists"
+msgstr "เรียงลำดับรายการเล่น"
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:70
-msgid "Only download album cover artwork"
-msgstr "ดาวน์โหลดเฉพาะภาพปกอัลบั้ม"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/OpenRemoteServer.cs:45
+#, fuzzy
+#| msgid "Name of DAAP server share"
+msgid "Open remote DAAP server"
+msgstr "ชื่อของแหล่งเพลงที่จะเปิดใช้ร่วมสำหรัับเซิร์ฟเวอร์ DAAP"
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:72
-msgid "Download album cover artwork and fill in missing track data"
-msgstr "ดาวน์โหลดภาพปกอัลบั้ม และเติมข้อมูลเพลงที่ว่างอยู่"
+#: ../src/Extensions/Banshee.Daap/Banshee.Daap/OpenRemoteServer.cs:50
+msgid "Enter server IP address and port:"
+msgstr "ป้อนหมายเลขไอพีและพอร์ตของเซิร์ฟเวอร์:"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:46
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:133
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:67
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:91
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:46
+msgid "Downloads"
+msgstr "รายการดาวน์โหลด"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:50
+msgid "Downloading eMusic Track(s)"
+msgstr "กำลังดาวน์โหลดเพลงจาก eMusic"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:51
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:51
+msgid "Initializing..."
+msgstr "กำลังตั้งต้นงาน..."
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:52
+msgid "Cancel all eMusic downloads?"
+msgstr "ต้องการยกเลิกการดาวน์โหลด eMusic ทั้งหมดหรือไม่?"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:120
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:120
+#, csharp-format
+msgid "Transferring {0} file at {1} KB/s"
+msgid_plural "Transferring {0} of {2} files at {1} KB/s"
+msgstr[0] "กำลังถ่ายโอนแฟ้ม {0} แฟ้มที่ {1} KB/s"
+msgstr[1] "กำลังถ่ายโอนแฟ้มที่ {0} จาก {2} แฟ้มที่ {1} KB/s"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:133
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:133
+msgid "Canceling Downloads"
+msgstr "กำลังยกเลิกการดาวน์โหลด"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/DownloadManager/DownloadUserJob.cs:135
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:135
+msgid "Waiting for downloads to terminate..."
+msgstr "กำลังรอให้รายการดาวน์โหลดหยุดทำงาน..."
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:60
+msgid "Import eMusic Downloads to Library"
+msgstr "นำเข้ารายการดาวน์โหลด eMusic มายังไลบรารี"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:62
+msgid "eMusic Files"
+msgstr "แฟ้ม eMusic"
+
+#: ../src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs:78
+#, fuzzy
+#| msgid "Music Library"
+msgid "eMusic Tracks"
+msgstr "ไลบรารีเพลง"
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:74
-msgid "Download album cover artwork and overwrite any existing track data"
-msgstr "ดาวน์โหลดภาพปกอัลบั้ม และเขียนทับข้อมูลเพลงที่มีอยู่"
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:57
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:58
+msgid "File System Queue"
+msgstr ""
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:76
-msgid "Rescan Library"
-msgstr "ตรวจข้อมูลไลบรารีอีกครั้ง"
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:72
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:93
+msgid "Clear"
+msgstr "ล้าง"
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:96
-msgid "Warning"
-msgstr "คำเตือน"
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:73
+msgid "Remove all tracks from the file system queue"
+msgstr ""
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchConfigDialog.cs:98
-msgid ""
-"This option can usually correct minor mistakes in metadata, however on rare "
-"occasions metadata may be incorrectly updated from MusicBrainz."
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:79
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:102
+msgid "Clear on Quit"
+msgstr "ล้างเมื่อออก"
+
+#: ../src/Extensions/Banshee.FileSystemQueue/Banshee.FileSystemQueue/FileSystemQueueSource.cs:80
+msgid "Clear the file system queue when quitting"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/AlbumDuplicateSolver.cs:46
+msgid "Duplicate Albums"
 msgstr ""
-"ตัวเลือกนี้จะช่วยแก้ไขข้อผิดพลาดเล็กน้อยในข้อมูลเพลง อย่างไรก็ตามก็มีโอกาสที่ข้อมูลเพลงจาก "
-"MusicBrainz จะผิดพลาด"
 
-#: ../src/Banshee.Plugins/MetadataSearch/MetadataSearchPlugin.cs:59
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/AlbumDuplicateSolver.cs:47
 msgid ""
-"Automatically search for missing and supplementary metadata and cover art "
-"for songs in your library."
-msgstr "ค้นหาข้อมูลเพลงและภาพปกอัลบั้มของเพลงในไลบรารีจากอินเทอร์เน็ตโดยอัตโนมัติ"
+"Displayed are albums that should likely be merged.  For each row, click the "
+"desired title to make it bold, or uncheck it to take no action."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/ArtistDuplicateSolver.cs:46
+msgid "Duplicate Artists"
+msgstr ""
 
-#: ../src/Banshee.Plugins/MetadataSearch/metadatasearch.schemas.in.h:1
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/ArtistDuplicateSolver.cs:47
 msgid ""
-"0 - Download only cover art 1 - Download cover art, fill in missing metadata "
-"2 - Download cover art, overwrite metadata"
+"Displayed are artists that should likely be merged.  For each row, click the "
+"desired name to make it bold, or uncheck it to take no action."
 msgstr ""
-"0 - ดาวน์โหลดปกอัลบั้มเท่านั้น 1 - ดาวน์โหลดปกอัลบั้ม และเติมข้อมูลเพลงที่ขาด 2 - "
-"ดาวน์โหลดปกอัลบั้ม และเขียนข้อมูลเพลงทับข้อมูลในไลบรารี"
 
-#: ../src/Banshee.Plugins/MetadataSearch/metadatasearch.schemas.in.h:2
-msgid "Enable the MetadataSearch plugin"
-msgstr "เปิดใช้งานปลั๊กอินค้นหาข้อมูลเพลง"
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixActions.cs:50
+msgid "Fix Music Metadata..."
+msgstr ""
 
-#: ../src/Banshee.Plugins/MetadataSearch/metadatasearch.schemas.in.h:3
-msgid "Method of fetching cover art and supplementary metadata"
-msgstr "วิธีการดึงข้อมูลปกอัลบั้มและข้อมูลเสริมของเพลง"
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:48
+msgid "Metadata Fixer"
+msgstr ""
 
-#: ../src/Banshee.Plugins/MMKeys/MMKeysConfigPage.cs:48
-msgid "Multimedia Keyboard Shortcuts"
-msgstr "ชุดปุ่มลัดของแป้นพิมพ์สื่อผสม"
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:54
+#, fuzzy
+#| msgid "Mime Type:"
+msgid "Problem Type:"
+msgstr "ชนิดแฟ้ม:"
+
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/FixSource.cs:66
+msgid "Apply Selected Fixes"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/GenreDuplicateSolver.cs:46
+msgid "Duplicate Genres"
+msgstr ""
 
-#: ../src/Banshee.Plugins/MMKeys/MMKeysConfigPage.cs:52
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/GenreDuplicateSolver.cs:47
 msgid ""
-"Configuration of multimedia keyboard shortcuts is done through the Gnome "
-"Keyboard Shortcuts configuration applet."
-msgstr "การตั้งค่าชุดปุ่มลัดของแป้นพิมพ์สื่อผสมสามารถทำได้ผ่านการตั้งค่าปุ่มลัดของ GNOME"
+"Displayed are genres that should likely be merged.  For each row, click the "
+"desired genre to make it bold, or uncheck it to take no action."
+msgstr ""
 
-#: ../src/Banshee.Plugins/MMKeys/mmkeys.schemas.in.h:1
-msgid "Enable the MultimediaKeys plugin"
-msgstr "เปิดใช้งานปลั๊กอินปุ่มสื่อผสม"
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/GenreDuplicateSolver.cs:77
+msgid " and "
+msgstr ""
 
-#: ../src/Banshee.Plugins/NotificationAreaIcon/NotificationAreaIconPlugin.cs:49
-msgid "Notification Area Icon"
-msgstr "ไอคอนพื้นที่แจ้งเตือน"
+#. Translators: These are articles that might be prefixed or suffixed
+#. on artist names or album titles.  You can add as many as you need,
+#. separated by a pipe (|)
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/Solver.cs:198
+msgid "a|an|the"
+msgstr ""
 
-#: ../src/Banshee.Plugins/NotificationAreaIcon/NotificationAreaIconPlugin.cs:53
-msgid "Shows the Notification Area Icon"
-msgstr "แสดงไอคอนในพื้นที่แจ้งเตือน"
+#. Translators: This is the format commonly used in your langauge for
+#. suffixing an article, eg in English: ", The"
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/Solver.cs:202
+#, csharp-format
+msgid ", {0}"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Fixup/Banshee.Fixup/View.cs:77
+msgid "Fix?"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:51
+msgid "View Item Details"
+msgstr "ดูรายละเอียดของรายการ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:60
+msgid "Open Webpage"
+msgstr "เปิดหน้าเว็บ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:79
+msgid "Visit Archive.org"
+msgstr "ไปที่ Archive.org"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:83
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:61
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:170
+msgid "Subscribe"
+msgstr ""
 
-#: ../src/Banshee.Plugins/NotificationAreaIcon/banshee-notificationareaicon.schemas.in.h:1
-msgid "Enable the Notification Area Icon plugin"
-msgstr "เปิดใช้งานปลั๊กอินไอคอนพื้นที่แจ้งเตือน"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:84
+msgid "Subscribe to this search as a podcast"
+msgstr ""
 
-#: ../src/Banshee.Widgets/ActiveUserEvent.cs:86
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/Actions.cs:88
 #, csharp-format
-msgid "Stop {0}"
-msgstr "หยุด {0}"
+msgid "Internet Archive: {0}"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:78
+msgid "Close Item"
+msgstr "ปิดรายการ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:97
+msgid "Getting item details from the Internet Archive"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:148
+msgid "Timed out getting item details from the Internet Archive"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:149
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:190
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:301
+msgid "Try Again"
+msgstr "ลองใหม่"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsSource.cs:151
+msgid "Error getting item details from the Internet Archive"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:205
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:130
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:66
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:138
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:89
+msgid "Description"
+msgstr "รายละเอียด"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:221
+msgid "Creator:"
+msgstr "ผู้สร้าง:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:222
+msgid "Venue:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:223
+#, fuzzy
+#| msgid "Open Location"
+msgid "Location:"
+msgstr "เปิดตำแหน่งแฟ้ม"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:225
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastPropertiesDialog.cs:81
+msgid "Date:"
+msgstr "วันที่:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:227
+msgid "Year:"
+msgstr "ปี:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:229
+msgid "Publisher:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:230
+msgid "Keywords:"
+msgstr "คำสำคัญ:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:231
+msgid "License URL:"
+msgstr "URL ของสัญญาอนุญาต:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:232
+msgid "Language:"
+msgstr "ภาษา:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:236
+msgid "Downloads, overall:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:237
+msgid "Downloads, past month:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:238
+msgid "Downloads, past week:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:242
+msgid "Added:"
+msgstr "เพิ่มเมื่อ:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:243
+msgid "Added by:"
+msgstr "เพิ่มโดย:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:244
+msgid "Collections:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:246
+#, fuzzy
+#| msgid "Contributors"
+msgid "Contributor:"
+msgstr "ผู้ร่วมสมทบ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:247
+msgid "Recorded by:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:248
+msgid "Lineage:"
+msgstr ""
 
-#: ../src/Banshee.Widgets/ActiveUserEvent.cs:89
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:249
+msgid "Transferred by:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:266
+#, fuzzy
+#| msgid "Overview"
+msgid "Reviews"
+msgstr "ข้อมูล"
+
+#. Translators: {0} is the number of reviewers, {1} is the average rating (not really relevant if there's only 1)
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:270
+#, fuzzy, csharp-format
+#| msgid "{0} Properties"
+msgid "{0} reviewer"
+msgid_plural "{0} reviewers, avg {1}"
+msgstr[0] "ปรับแต่งค่าของ {0}"
+msgstr[1] "ปรับแต่งค่าของ {0}"
+
+#. Translators: {0} is the unicode-stars-rating, {1} is the name of a person who reviewed this item, and {1} is a date/time string
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:289
+#, fuzzy, csharp-format
+#| msgid "{0}:{1:00} of {2}"
+msgid "{0} by {1} on {2}"
+msgstr "{0}:{1:00} จาก {2}"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/DetailsView.cs:319
+msgid "Write your own review"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:108
+#, fuzzy
+#| msgid "Description:"
+msgid "Collection:"
+msgstr "คำอธิบาย:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:117
 #, csharp-format
-msgid ""
-"The '{0}' operation is still performing work. Would you like to stop it?"
-msgstr "ปฏิบัติการ '{0}' ยังคงทำงานอยู่ คุณต้องการหยุดหรือไม่?"
+msgid "Optional Query"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HeaderFilters.cs:164
+msgid "Sort by:"
+msgstr "เรียงตาม:"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeSource.cs:119
+msgid "Preferred Media Types"
+msgstr "ชนิดสื่อที่ต้องการ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeSource.cs:122
+msgid "_Audio"
+msgstr "เ_สียง"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeSource.cs:125
+msgid "_Video"
+msgstr "_วีดิทัศน์"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeSource.cs:128
+msgid "_Text"
+msgstr "_ข้อความ"
 
-#: ../src/Banshee.Widgets/ActiveUserEvent.cs:92
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:100
 #, csharp-format
-msgid "Continue {0}"
-msgstr "ทำ {0} ต่อไป"
+msgid "Search..."
+msgstr "ค้นหา..."
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:111
+msgid "_Go"
+msgstr "ไ_ป"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:119
+msgid "Staff Picks"
+msgstr ""
 
-#: ../src/Banshee.Widgets/DiscUsageDisplay.cs:195
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:120
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:588
+msgid "Creative Commons"
+msgstr "ครีเอทีฟคอมมอนส์"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:121
+msgid "History"
+msgstr "ประวัติ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:122
+msgid "Classic Cartoons"
+msgstr "การ์ตูนคลาสสิก"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:123
+msgid "Speeches"
+msgstr "เสียงพูด"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:124
+msgid "For Children"
+msgstr "สำหรับเด็ก"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:125
+msgid "Poetry"
+msgstr "บทกวี"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:126
+msgid "Creator is United States"
+msgstr "ผู้สร้างคือสหรัฐอเมริกา"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:127
+msgid "Old Movies"
+msgstr "ภาพยนตร์เก่า"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:128
+msgid "New From LibriVox"
+msgstr "รายการใหม่จาก LibriVox"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:129
+msgid "Old Texts"
+msgstr "หนังสือเก่า"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:130
+msgid "Charlie Chaplin"
+msgstr "ชาร์ลี แชปลิน"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:131
+msgid "NASA"
+msgstr "นาซา"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:132
+msgid "Library of Congress"
+msgstr "ห้องสมุดคองเกรส"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:148
 msgid ""
-"Insert\n"
-"Disc"
+"The Internet Archive, a 501(c)(3) non-profit, is building a digital library "
+"of Internet sites and other cultural artifacts in digital form. Like a paper "
+"library, we provide free access to researchers, historians, scholars, and "
+"the general public."
 msgstr ""
-"ใส่\n"
-"แผ่น"
 
-#: ../src/Banshee.Widgets/SearchEntry.cs:203
-#: ../src/Banshee.Widgets/SearchEntry.cs:314
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:151
+msgid "Visit the Internet Archive online at archive.org"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:307
+#, fuzzy
+#| msgid "Audio"
+msgid "Audiobooks"
+msgstr "ซีดีเพลง"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:308
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:78
+msgid "Movies"
+msgstr "ภาพยนตร์"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:309
+msgid "Lectures"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:310
+#, fuzzy
+#| msgid "Contributors"
+msgid "Concerts"
+msgstr "ผู้ร่วมสมทบ"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/HomeView.cs:311
+msgid "Books"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:58
+msgid "Search Results"
+msgstr "ผลการค้นหา"
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:139
+msgid "Searching the Internet Archive"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:175
+msgid "No matches."
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:180
 #, csharp-format
-msgid "Searching: {0}"
-msgstr "กำลังค้นหา: {0}"
+msgid "Showing 1 match"
+msgid_plural "Showing 1 to {0:N0} of {1:N0} total matches"
+msgstr[0] ""
+msgstr[1] ""
 
-#: ../src/Banshee.Widgets/StreamPositionLabel.cs:83
-msgid "Idle"
-msgstr "ไม่ได้เล่น"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:189
+msgid "Timed out searching the Internet Archive"
+msgstr ""
 
-#: ../src/ExceptionDialog.cs:24
-msgid "Banshee Encountered a Fatal Error"
-msgstr "Banshee พบข้อผิดพลาดร้ายแรง"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchSource.cs:194
+msgid "Error searching the Internet Archive"
+msgstr ""
 
-#: ../src/ExceptionDialog.cs:52
-msgid ""
-"This may be due to a programming error. Please help us make Banshee better "
-"by reporting this error. Thank you in advance!"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:88
+msgid "Fetch more results from the Internet Archive?"
 msgstr ""
-"นี่อาจเป็นปัญหาที่ตัวโปรแกรม คุณสามารถรายงานปัญหานี้ เพื่อช่วยปรับปรุง Banshee ให้ดีขึ้น "
-"ขอขอบคุณล่วงหน้า!"
 
-#: ../src/ExceptionDialog.cs:99
-msgid "An unhandled exception was thrown: "
-msgstr "มีสิ่งผิดปกติที่ไม่ได้เตรียมรับมือเกิดขึ้น:"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:94
+msgid "Fetch More"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:52
-msgid "Log Viewer"
-msgstr "เครื่องมือแสดงบันทึกปฏิบัติการ"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:128
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:61
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:98
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:137
+#, fuzzy
+#| msgid "Clear"
+msgid "Creator"
+msgstr "ล้าง"
 
-#: ../src/LogCoreViewer.cs:88
-msgid "Time Stamp"
-msgstr "บันทึกเวลา"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:129
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:75
+msgid "Publisher"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:107
-msgid "Message"
-msgstr "ข้อความ"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:134
+msgid "Formats"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:119
-msgid "Show:"
-msgstr "แสดง:"
+#: ../src/Extensions/Banshee.InternetArchive/Banshee.InternetArchive/SearchView.cs:136
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:65
+msgid "Added"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:136
-msgid "All Log Entries"
-msgstr "รายการบันทึกปฏิบัติการทั้งหมด"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:62
+msgid "Collection"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:137
-msgid "Only Error Messages"
-msgstr "เฉพาะข้อความแจ้งข้อผิดพลาด"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:63
+#, fuzzy
+#| msgid "Contributors"
+msgid "Contributor"
+msgstr "ผู้ร่วมสมทบ"
 
-#: ../src/LogCoreViewer.cs:138
-msgid "Only Warning Messages"
-msgstr "เฉพาะข้อความเตือน"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:64
+msgid "Created"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:139
-msgid "Only Information Messages"
-msgstr "เฉพาะข้อความแจ้งเพื่อทราบ"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:68
+#, fuzzy
+#| msgid "Output Format:"
+msgid "Format"
+msgstr "ฟอร์แมตผลลัพธ์:"
 
-#: ../src/LogCoreViewer.cs:140
-msgid "Only Debug Messages"
-msgstr "เฉพาะข้อความดีบั๊ก"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:69
+msgid "ID"
+msgstr ""
 
-#: ../src/LogCoreViewer.cs:155
-msgid "Entry Details:"
-msgstr "รายละเอียดรายการ:"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:70
+msgid "Language"
+msgstr "ภาษา"
 
-#: ../src/PlayerInterface.cs:376
-msgid "Loading..."
-msgstr "กำลังเรียก..."
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:73
+#, fuzzy
+#| msgid "Mime Type:"
+msgid "Media Type"
+msgstr "ชนิดแฟ้ม:"
 
-#: ../src/PlayerInterface.cs:431
-msgid "All"
-msgstr "ทั้งหมด"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Field.cs:74
+msgid "Review Count"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:433 ../src/PlayerInterface.cs:1312
-msgid "Song Name"
-msgstr "ชื่อเพลง"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:71
+msgid "Moving Images"
+msgstr "ภาพเคลื่อนไหว"
 
-#: ../src/PlayerInterface.cs:434 ../src/PlayerInterface.cs:1310
-#: ../src/PlayerInterface.cs:2308
-msgid "Artist Name"
-msgstr "ชื่อศิลปิน"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:72
+msgid "Animation & Cartoons"
+msgstr "แอนิเมชันและการ์ตูน"
 
-#: ../src/PlayerInterface.cs:435 ../src/PlayerInterface.cs:1314
-#: ../src/PlayerInterface.cs:2304
-msgid "Album Title"
-msgstr "ชื่ออัลบั้ม"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:73
+msgid "Arts & Music"
+msgstr "ศิลปะและดนตรี"
 
-#: ../src/PlayerInterface.cs:436 ../src/PlayerInterface.cs:1316
-#: ../src/PlayerInterface.cs:2312 ../src/PlaylistView.cs:106
-msgid "Genre"
-msgstr "ประเภท"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:74
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:99
+msgid "Computers & Technology"
+msgstr "คอมพิวเตอร์และเทคโนโลยี"
 
-#: ../src/PlayerInterface.cs:437 ../src/PlayerInterface.cs:1318
-#: ../src/PlaylistView.cs:109
-msgid "Year"
-msgstr "ปี"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:75
+msgid "Cultural & Academic Films"
+msgstr "ภาพยนตร์เชิงวัฒนธรรมและการศึกษา"
 
-#: ../src/PlayerInterface.cs:458
-msgid "Write selection to CD"
-msgstr "เขียนเพลงที่เลือกลงซีดี"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:76
+msgid "Ephemeral Films"
+msgstr "หนังสั้น"
 
-#: ../src/PlayerInterface.cs:459
-msgid "Import CD into library"
-msgstr "นำเข้าซีดีไปยังไลบรารี"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:77
+msgid "Home Movies"
+msgstr "ภาพยนตร์ในบ้าน"
 
-#: ../src/PlayerInterface.cs:460
-msgid "Play previous song"
-msgstr "เล่นเพลงก่อนหน้า"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:79
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:104
+msgid "News & Public Affairs"
+msgstr "ข่าวและกิจกรรมสาธารณะ"
 
-#: ../src/PlayerInterface.cs:461
-msgid "Play/pause current song"
-msgstr "เล่น/พักเพลงปัจจุบัน"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:80
+msgid "Open Source Movies"
+msgstr "ภาพยนตร์โอเพนซอร์ส"
 
-#: ../src/PlayerInterface.cs:462
-msgid "Play next song"
-msgstr "เล่นเพลงถัดไป"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:81
+msgid "Prelinger Archives"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:463
-msgid "Device disk usage"
-msgstr "เนื้อที่ดิสก์ที่ใช้"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:82
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:109
+msgid "Spirituality & Religion"
+msgstr "ความเชื่อและศาสนา"
 
-#: ../src/PlayerInterface.cs:464
-msgid "Synchronize music library to device"
-msgstr "ปรับข้อมูลในไลบรารีเพลงให้ตรงกับอุปกรณ์"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:83
+msgid "Sports Videos"
+msgstr "กีฬา"
 
-#: ../src/PlayerInterface.cs:465
-msgid "Adjust volume"
-msgstr "ปรับความดังเสียง"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:84
+msgid "Videogame Videos"
+msgstr "วิดีโอเกม"
 
-#: ../src/PlayerInterface.cs:466
-msgid "Change repeat playback mode"
-msgstr "เปลี่ยนโหมดการเล่นซ้ำ"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:85
+msgid "Vlogs"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:467
-msgid "Toggle shuffle playback mode"
-msgstr "สลับโหมดการเล่นแบบสุ่ม"
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:86
+msgid "Youth Media"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:88
+msgid "Texts"
+msgstr "หนังสือ"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:89
+msgid "American Libraries"
+msgstr "ห้องสมุดอเมริกา"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:90
+msgid "Canadian Libraries"
+msgstr "ห้องสมุดแคนาดา"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:91
+msgid "Universal Library"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:92
+msgid "Project Gutenberg"
+msgstr "โครงการกูเตนเบิร์ก"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:93
+msgid "Children's Library"
+msgstr "ห้องสมุดสำหรับเด็ก"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:94
+msgid "Biodiversity Heritage Library"
+msgstr "ห้องสมุดมรดกความหลากหลายทางชีวภาพ"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:95
+msgid "Additional Collections"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:98
+msgid "Audio Books & Poetry"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:100
+msgid "Grateful Dead"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:101
+msgid "Live Music Archive"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:102
+msgid "Music & Arts"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:103
+msgid "Netlabels"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:105
+msgid "Non-English Audio"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:106
+msgid "Open Source Audio"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:108
+msgid "Radio Programs"
+msgstr "รายการวิทยุ"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:111
+msgid "Education"
+msgstr "การศึกษา"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:112
+msgid "Software"
+msgstr "ซอฟต์แวร์"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/MediaType.cs:113
+msgid "CLASP"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:92
+msgid "Downloads This Week"
+msgstr "รายการดาวน์โหลดในสัปดาห์นี้"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:93
+msgid "Newest"
+msgstr "ใหม่สุด"
+
+#: ../src/Extensions/Banshee.InternetArchive/InternetArchive/Sort.cs:94
+msgid "Oldest"
+msgstr "เก่าสุด"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSourceContents.cs:62
+msgid "Not Set"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:54
+msgid "Radio"
+msgstr "วิทยุ"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:65
+msgid "Add Station"
+msgstr "เพิ่มสถานี"
 
-#: ../src/PlayerInterface.cs:468
-msgid "Edit and view metadata of selected songs"
-msgstr "แก้ไขและดูข้อมูลเพลงที่เลือก"
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:66
+msgid "Add a new Internet Radio station or playlist"
+msgstr "เพิ่มสถานีหรือรายการเล่นวิทยุอินเทอร์เน็ต"
 
-#: ../src/PlayerInterface.cs:807
-msgid "Cannot Play Song"
-msgstr "ไม่สามารถเล่นเพลงได้"
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:83
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search your stations"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:84
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationEditor.cs:60
+#, fuzzy
+#| msgid "Editing Song"
+msgid "Edit Station"
+msgstr "แก้ไขข้อมูลเพลง"
 
-#: ../src/PlayerInterface.cs:808
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:136
+msgid "Station"
+msgstr "สถานี"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:157
 #, csharp-format
+msgid "{0} station"
+msgid_plural "{0} stations"
+msgstr[0] "{0} สถานี"
+msgstr[1] "{0} สถานี"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:243
+msgid "Please provide a valid station URI"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:256
+msgid "Please provide a station genre"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/InternetRadioSource.cs:264
+msgid "Please provide a station title"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:67
+msgid "Add new radio station"
+msgstr ""
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:68
+msgid "Edit radio station"
+msgstr "แก้ไขสถานีวิทยุ"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:97
 msgid ""
-"{0} cannot be played by Banshee. The most common reasons for this are:\n"
-"\n"
-"  <big>•</big> Song is protected (DRM)\n"
-"  <big>•</big> Song is on a DAP that does not support playback\n"
+"Enter the Genre, Title and URL of the radio station you wish to add. A "
+"description is optional."
 msgstr ""
-"{0} ไม่สามารถเล่นโดย Banshee ได้ สาเหตุที่พบบ่อยก็คือ:\n"
-"\n"
-"  <big>•</big> เพลงมีการปกป้องสิทธิ์ (DRM)\n"
-"  <big>•</big> เพลงอยู่ในเครื่องเล่นเพลงดิจิทัลที่ไม่สนับสนุนการเล่นเพลง\n"
 
-#: ../src/PlayerInterface.cs:828
-msgid "Pause"
-msgstr "พัก"
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:118
+msgid "Station Genre:"
+msgstr "แนวของสถานี:"
 
-#: ../src/PlayerInterface.cs:862
-msgid "Playback Error"
-msgstr "ข้อผิดพลาดในการเล่นเพลง"
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:120
+msgid "Station Name:"
+msgstr "ชื่อสถานี:"
 
-#: ../src/PlayerInterface.cs:1057
-msgid "Import"
-msgstr "นำเข้า"
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:121
+msgid "Stream URL:"
+msgstr "URL ของกระแสข้อมูล:"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:122
+msgid "Station Creator:"
+msgstr "ผู้สร้างสถานี:"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:123
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:81
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastPropertiesDialog.cs:89
+msgid "Description:"
+msgstr "คำอธิบาย:"
+
+#: ../src/Extensions/Banshee.InternetRadio/Banshee.InternetRadio/StationEditor.cs:128
+#: ../src/Hyena/Hyena.Gui/Hyena.Widgets/RatingMenuItem.cs:50
+msgid "Rating:"
+msgstr "คะแนนนิยม:"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:125
+msgid "_Last.fm"
+msgstr "_Last.fm"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:126
+msgid "Configure the Audioscrobbler plugin"
+msgstr "ตั้งค่าปลั๊กอิน Audioscrobbler"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:129
+msgid "Visit _User Profile Page"
+msgstr "ไปยังหน้าโพรไฟล์ผู้ใ_ช้"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:130
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:164
+msgid "Visit Your Last.fm Profile Page"
+msgstr "ไปยังหน้าโพรไฟล์ผู้ใช้ Last.fm ของคุณ"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:135
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:91
+msgid "_Enable Song Reporting"
+msgstr "เ_ปิดใช้การรายงานสถิติเพลง"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Audioscrobbler/AudioscrobblerService.cs:136
+msgid "Enable song reporting"
+msgstr "เปิดใช้การรายงานสถิติเพลง"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:66
+msgid "Connect"
+msgstr "เชื่อมต่อ"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:74
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:98
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:113
+msgid "View on Last.fm"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:75
+msgid "View this artist's Last.fm page"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:78
+msgid "View Artist on Wikipedia"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:1075
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:79
+msgid "Find this artist on Wikipedia"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:86
+msgid "View Artist's Videos"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:87
+msgid "Find videos by this artist"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:90
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:106
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:117
+msgid "Recommend to"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:91
+msgid "Recommend this artist to someone"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:99
+msgid "View this album's Last.fm page"
+msgstr "ไปยังหน้าของอัลบั้มนี้ใน Last.fm"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:107
+msgid "Recommend this album to someone"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:114
+msgid "View this track's Last.fm page"
+msgstr "ไปยังหน้าของเพลงนี้ใน Last.fm"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:118
+msgid "Recommend this track to someone"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:150
 #, csharp-format
-msgid "Rename {0}"
-msgstr "เปลี่ยนชื่อ {0}"
+msgid "http://last.fm/music/{0}"
+msgstr "http://last.fm/music/{0}"
 
-#: ../src/PlayerInterface.cs:1196
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:158
 #, csharp-format
-msgid "{0} day"
-msgid_plural "{0} days"
-msgstr[0] "{0} วัน"
-msgstr[1] "{0} วัน"
+msgid "http://last.fm/music/{0}/{1}"
+msgstr "http://last.fm/music/{0}/{1}"
 
-#: ../src/PlayerInterface.cs:1213
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:166
 #, csharp-format
-msgid "{0} Item"
-msgid_plural "{0} Items"
-msgstr[0] "{0} รายการ"
-msgstr[1] "{0} รายการ"
+msgid "http://last.fm/music/{0}/_/{1}"
+msgstr "http://last.fm/music/{0}/_/{1}"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:174
+#, csharp-format
+msgid "http://www.last.fm/music/{0}/+videos"
+msgstr "http://www.last.fm/music/{0}/+videos"
+
+#. Translators: this is used for looking up artist pages on Wikipedia; change to your wikipedia language if you want
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:182
+#: ../src/Extensions/Banshee.Wikipedia/Banshee.Wikipedia/WikipediaView.cs:48
+#, csharp-format
+msgid "http://en.wikipedia.org/wiki/{0}"
+msgstr "http://th.wikipedia.org/wiki/{0}"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:78
+msgid "Account"
+msgstr "บัญชี"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:80
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:270
+msgid "_Username"
+msgstr "_ชื่อผู้ใช้"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:160
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginForm.cs:86
+msgid "Sign up for Last.fm"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:254
+msgid ""
+"Open Last.fm in a browser, giving you the option to authorize Banshee to "
+"work with your account"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:265
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginDialog.cs:49
+msgid "Log in to Last.fm"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:286
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:294
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:321
+msgid "You need to allow Banshee to access your Last.fm account."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:296
+msgid "Finish Logging In"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:310
+#, csharp-format
+msgid "You are logged in to Last.fm as the user <i>{0}</i>."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmPreferences.cs:313
+msgid "Log out of Last.fm"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSourceContents.cs:123
+msgid "Recently Loved Tracks"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSourceContents.cs:124
+msgid "Recently Played Tracks"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSourceContents.cs:125
+#, fuzzy
+#| msgid "Artist"
+msgid "My Top Artists"
+msgstr "ศิลปิน"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSourceContents.cs:206
+#, fuzzy, csharp-format
+#| msgid "{0} day"
+#| msgid_plural "{0} days"
+msgid "{0} plays"
+msgstr "{0} วัน"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSource.cs:243
+msgid "Account Settings"
+msgstr "ตั้งค่าบัญชี"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSource.cs:247
+msgid "Join Last.fm"
+msgstr "เข้าร่วมกับ Last.fm"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/ContextPage.cs:44
+msgid "Last.fm Recommendations"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:80
+#, csharp-format
+msgid "Top Albums by {0}"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:81
+#, fuzzy, csharp-format
+#| msgid "Track {0}"
+msgid "Top Tracks by {0}"
+msgstr "เพลงที่ {0}"
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:178
+msgid "Recommended Artists"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/RecommendationPane.cs:206
+msgid "No similar artists found"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/SimilarArtistTile.cs:60
+#, csharp-format
+msgid "{0}% Similarity"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Recommendations/SimilarArtistTile.cs:62
+#, fuzzy
+#| msgid "Unknown Artist"
+msgid "Unknown Similarity"
+msgstr "ไม่มีชื่อศิลปิน"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:59
+msgid "_Add Station..."
+msgstr "เ_พิ่มสถานี..."
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:60
+msgid "Add a new Last.fm radio station"
+msgstr "เพิ่มสถานีวิทยุ Last.fm ใหม่"
+
+#. Translators: {0} is a type of Last.fm station, eg "Fans of" or "Similar to".
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:73
+#, csharp-format
+msgid "Listen to {0} Station"
+msgstr ""
+
+#. Translators: {0} is a type of Last.fm station, eg "Fans of" or "Similar to".
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:75
+#, csharp-format
+msgid "Listen to the Last.fm {0} station for this artist"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:80
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:81
+msgid "Fans of"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:85
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:86
+msgid "Similar to"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:94
+msgid "Love Track"
+msgstr "ชอบเพลง"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:95
+msgid "Mark current track as loved"
+msgstr "ทำเครื่องหมายเพลงปัจจุบันว่าชอบ"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:99
+msgid "Ban Track"
+msgstr "แบนเพลง"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:100
+msgid "Mark current track as banned"
+msgstr "ทำเครื่องหมายเพลงปัจจุบันว่าถูกแบน"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:188
+#, csharp-format
+msgid "Fans of {0}"
+msgstr "แฟนของ {0}"
 
-#: ../src/PlayerInterface.cs:1215
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:209
 #, csharp-format
-msgid "{0} Total Play Time"
+msgid "Similar to {0}"
+msgstr "คล้ายกับ {0}"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingActions.cs:240
+msgid "_Add Station"
+msgstr "เ_พิ่มสถานี"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingService.cs:93
+msgid "Sort Stations by"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/LastfmStreamingService.cs:136
+#, fuzzy
+#| msgid "{0} Total Play Time"
+msgid "Total Play Count"
 msgstr "ความยาวทั้งหมด {0}"
 
-#: ../src/PlayerInterface.cs:1572
-msgid "Clear"
-msgstr "ล้าง"
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationEditor.cs:68
+msgid "New Station"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationEditor.cs:90
+msgid "Station _Type:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:58
+msgid "Last.fm Station"
+msgstr "สถานี Last.fm"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:151
+msgid "Edit Last.fm Station"
+msgstr "แก้ไขสถานี Last.fm"
 
-#: ../src/PlayerInterface.cs:1822
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:152
+msgid "Delete Last.fm Station"
+msgstr ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:239
 #, csharp-format
-msgid "Cannot Import: {0} ({1})"
-msgstr "ไม่สามารถนำเข้า: {0} ({1})"
+msgid "Tuning Last.fm to {0}."
+msgstr ""
 
-#: ../src/PlayerInterface.cs:1865
+#. Translators: {0} is an error message sentence from RadioConnection.cs.
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:249
 #, csharp-format
-msgid "Are you sure you want to permanently delete this song?"
-msgid_plural ""
-"Are you sure you want to permanently delete the selected {0} songs?"
-msgstr[0] "คุณแน่ใจว่าต้องการลบเพลงนี้อย่างถาวรหรือไม่?"
-msgstr[1] "คุณแน่ใจว่าต้องการลบเพลงที่เลือกไว้ {0} เพลงนี้อย่างถาวรหรือไม่?"
+msgid "Failed to tune in station. {0}"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:1869
-msgid "If you delete the selection, it will be permanently lost."
-msgstr "ถ้าคุณลบเพลงที่เลือกไว้ เพลงจะสูญหายอย่างถาวร"
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:357
+#, csharp-format
+msgid "Getting new songs for {0}."
+msgstr ""
 
-#: ../src/PlayerInterface.cs:1872
-msgid "Remove selection from library"
-msgstr "ลบเพลงที่เลือกออกจากไลบรารี"
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:364
+#, csharp-format
+msgid "No new songs available for {0}."
+msgstr ""
 
-#: ../src/PlayerInterface.cs:1874
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:390
 #, csharp-format
-msgid "Are you sure you want to remove the selected song from your library?"
-msgid_plural ""
-"Are you sure you want to remove the selected {0} songs from your library?"
-msgstr[0] "คุณแน่ใจว่าต้องการลบเพลงที่เลือกออกจากไลบรารีหรือไม่?"
-msgstr[1] "คุณแน่ใจว่าต้องการลบเพลง <b>({0})</b> เพลงที่เลือกออกจากไลบรารีหรือไม่?"
+msgid "Failed to get new songs for {0}."
+msgstr ""
 
-#: ../src/PlayerInterface.cs:2011
-msgid "New CD"
-msgstr "ซีดีใหม่"
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:451
+#, csharp-format
+msgid "{0} song played"
+msgid_plural "{0} songs played"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:583
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:84
+msgid "Recommended"
+msgstr "แนะนำ"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:584
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:93
+msgid "Personal"
+msgstr "ส่วนตัว"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:585
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:102
+msgid "Loved"
+msgstr "ชอบ"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:586
+#, fuzzy
+#| msgid "Banshee"
+msgid "Banshee Group"
+msgstr "Banshee"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs:587
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:111
+msgid "Neighbors"
+msgstr "เพื่อนบ้าน"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:85
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:94
+msgid "For User:"
+msgstr "สำหรับผู้ใช้:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:103
+msgid "By User:"
+msgstr "โดยผู้ใช้:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:112
+msgid "Of User:"
+msgstr "ของผู้ใช้:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:120
+msgid "Group"
+msgstr "กลุ่ม"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:121
+msgid "Group Name:"
+msgstr "ชื่อกลุ่ม:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:129
+msgid "Tag"
+msgstr "ป้ายกำกับ"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:130
+msgid "Tag Name:"
+msgstr "ชื่อป้ายกำกับ:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:138
+msgid "Fan"
+msgstr "แฟน"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:139
+msgid "Fans of:"
+msgstr "แฟนของ:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:147
+msgid "Similar"
+msgstr "คล้าย"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:148
+msgid "Similar to:"
+msgstr "คล้ายกับ:"
+
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:156
+msgid "lastfm:// URL"
+msgstr "URL แบบ lastfm://"
 
-#. Translators: {0} is the name of the DAP device (i.e. 'iPod')
-#: ../src/PlayerInterface.cs:2032
+#: ../src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationType.cs:157
+msgid "lastfm://"
+msgstr "lastfm://"
+
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/MediaPanelContents.cs:109
+msgid "Media"
+msgstr "สื่อ"
+
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/MediaPanelContents.cs:119
+msgid "Library"
+msgstr "ไลบรารี"
+
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/MediaPanelContents.cs:131
+msgid "Launch the Banshee Media Player"
+msgstr "เรียกโปรแกรมเล่นสื่อ Banshee"
+
+#: ../src/Extensions/Banshee.MeeGo/Banshee.MeeGo/MeeGoPanel.cs:60
+#: ../src/Extensions/Banshee.MeeGo/meego-panel-banshee.desktop.in.in.h:2
+msgid "media"
+msgstr "สื่อ"
+
+#: ../src/Extensions/Banshee.MeeGo/meego-panel-banshee.desktop.in.in.h:1
+msgid "Quick access panel for your media"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeService.cs:25
+msgid "_Mini Mode"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:100
+msgid "Full Mode"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:123
+msgid "Switch back to full mode"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiniMode/Banshee.MiniMode/MiniModeWindow.cs:124
+msgid "Change repeat playback mode"
+msgstr "เปลี่ยนโหมดการเล่นซ้ำ"
+
+#: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/MiroGuideSource.cs:50
+msgid "Miro Guide"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/MiroGuideSource.cs:97
+msgid "Discover interesting podcasts in the Miro Guide podcast directory!"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/MiroGuideSource.cs:100
+msgid "Open Miro Guide"
+msgstr ""
+
+#: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/View.cs:56
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search for podcasts"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Extensions/Banshee.MiroGuide/Banshee.MiroGuide/View.cs:57
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search for video podcasts"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:139
+#, fuzzy
+#| msgid "Shows the Notification Area Icon"
+msgid "_Show Notifications"
+msgstr "แสดงไอคอนในพื้นที่แจ้งเตือน"
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:140
+#, fuzzy
+#| msgid "Shows the Notification Area Icon"
+msgid "Show notifications when item changes"
+msgstr "แสดงไอคอนในพื้นที่แจ้งเตือน"
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:344
+msgid "Still Running"
+msgstr ""
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:345
+msgid ""
+"Banshee was closed to the notification area. Use the <i>Quit</i> option to "
+"end your session."
+msgstr ""
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:480
+msgid "Skip this item"
+msgstr "ข้ามรายการนี้"
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:484
+msgid "Cannot show notification"
+msgstr ""
+
+#. Translators: {0} and {1} are for markup so ignore them, {2} and {3}
+#. are Artist Name and Album Title, respectively;
+#. e.g. 'by Parkway Drive from Killing with a Smile'
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/NotificationAreaService.cs:518
 #, csharp-format
-msgid "Synchronize {0}"
-msgstr "ปรับข้อมูลกับ {0} ให้ตรงกัน"
+msgid ""
+"{0}by{1} {2}\n"
+"{0}from{1} {3}"
+msgstr ""
+
+#: ../src/Extensions/Banshee.NotificationArea/Banshee.NotificationArea/X11NotificationAreaBox.cs:68
+msgid "Banshee"
+msgstr "Banshee"
+
+#: ../src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingSource.cs:59
+msgid "Simplify"
+msgstr ""
+
+#: ../src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingSource.cs:60
+msgid "Simplify the Now Playing interface by hiding the source list and more"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:144
+#, fuzzy, csharp-format
+#| msgid "Cannot import track from {0}"
+msgid "Unable to import track: {0}"
+msgstr "ไม่สามารถนำเข้าเพลงจาก {0}"
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:178
+msgid "Importing from Amarok failed"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs:189
+msgid "Amarok"
+msgstr ""
 
-#: ../src/PlayerInterface.cs:2033
+#. TODO add Help button and dialog/tooltip
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:68
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:384
+msgid "iTunes Importer"
+msgstr "เครื่องมือนำเข้าสื่อ iTunes"
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:90
+#, fuzzy
+#| msgid "Importing Songs"
+msgid "Import song ratings"
+msgstr "กำลังนำเข้าเพลง"
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:93
+msgid "Import play statistics (playcount, etc.)"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:96
+msgid "Import playlists"
+msgstr "นำเข้ารายการเล่น"
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:120
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:387
+#, csharp-format
+msgid "Locate your \"{0}\" file..."
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:138
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:388
+#, csharp-format
+msgid "Locate \"{0}\""
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:167
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:389
+msgid "Locate iTunes Music Directory"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportDialogs.cs:196
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:391
 #, csharp-format
 msgid ""
-"You have made changes to your {0}. Please choose a method for updating the "
-"contents of your {0}.\n"
-"\n"
-"<big>•</big> <i>Synchronize Library</i>: synchronize Banshee library to {0}\n"
-"<big>•</big> <i>Save Manual Changes</i>: save only the manual changes you "
-"made"
+"The iTunes library refers to your music directory as \"{0}\" but Banshee was "
+"not able to infer the location of this directory. Please locate it."
 msgstr ""
-"คุณได้เปลี่ยนแปลงแก้ไข {0}. กรุณาเลือกวิธีการที่จะปรับข้อมูลใน {0} ของคุณ\n"
-"\n"
-"<big>•</big> <i>ปรับให้ตรงกับไลบรารี</i>: ปรับข้อมูลไลบรารี Banshee ไปยัง {0}\n"
-"<big>•</big> <i>บันทึกการแก้ไขที่สั่งเอง</i>: บันทึกเฉพาะการแก้ไขที่คุณสั่งเอง"
 
-#: ../src/PlayerInterface.cs:2039
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:75
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:393
+#, fuzzy
+#| msgid "Music Player"
+msgid "iTunes Media Player"
+msgstr "โปรแกรมเล่นเพลง"
+
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:135
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:395
 msgid ""
-"<b>Warning:</b> Actions will alter or erase existing iPod contents and may "
-"cause incompatability with iTunes!"
+"Banshee is not familiar with this version of the iTunes library format. "
+"Importing may or may not work as expected, or at all. Would you like to "
+"attempt to import anyway?"
 msgstr ""
-"<b>คำเตือน:</b> ปฏิบัติการต่างๆ จะเปลี่ยนแปลงหรือลบข้อมูลที่อยู่ในไอพอด และอาจทำให้ข้อมูลใช้กับ "
-"iTunes ไม่ได้!"
 
-#: ../src/PlayerInterface.cs:2041
-msgid "Synchronize Library"
-msgstr "ปรับให้ตรงกับไลบรารี"
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs:440
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:236
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:397
+msgid "Unable to import song."
+msgstr "ไม่สามารถนำเข้าเพลง"
 
-#: ../src/PlayerInterface.cs:2043
-msgid "Save Manual Changes"
-msgstr "บันทึกการแก้ไขที่สั่งเอง"
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:370
+msgid "Rhythmbox Music Player"
+msgstr "โปรแกรมเล่นเพลง Rhythmbox"
 
-#: ../src/PlaylistColumns.cs:80
-msgid "Invalid column width"
-msgstr "ความกว้างคอลัมน์ที่ใช้ไม่ได้"
+#: ../src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs:386
+msgid "Import _playlists"
+msgstr "นำเข้า_รายการเล่น"
 
-#: ../src/PlaylistColumns.cs:139
-msgid "Choose Columns"
-msgstr "เลือกคอลัมน์"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/HeaderWidget.cs:59
+msgid "_Fill"
+msgstr ""
 
-#: ../src/PlaylistColumns.cs:155
-msgid "Visible Playlist Columns"
-msgstr "คอลัมน์ที่แสดงในรายการเล่น"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/HeaderWidget.cs:71
+#, fuzzy
+#| msgid "from"
+msgid "f_rom"
+msgstr "จาก"
 
-#: ../src/PlaylistView.cs:94
-msgid "Track"
-msgstr "เพลงที่"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:51
+#, fuzzy
+#| msgid "Add to Playlist"
+msgid "Add to Play Queue"
+msgstr "เพิ่มในรายการเล่น"
 
-#: ../src/PlaylistView.cs:97
-msgid "Artist"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:52
+#, fuzzy
+#| msgid ""
+#| "Append selected songs to playlist or create new playlist from selection"
+msgid "Append selected songs to the play queue"
+msgstr "เพิ่มเพลงที่เลือกลงในรายการเล่น หรือสร้างรายการใหม่จากเพลงที่เลือก"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:56
+msgid "Play After"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:57
+msgid "Add selected songs after the currently playing track, album, or artist"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:61
+msgid "Current Track"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:62
+#, fuzzy
+#| msgid ""
+#| "Append selected songs to playlist or create new playlist from selection"
+msgid "Add selected songs to the play queue after the currently playing song"
+msgstr "เพิ่มเพลงที่เลือกลงในรายการเล่น หรือสร้างรายการใหม่จากเพลงที่เลือก"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:66
+msgid "Current Album"
+msgstr "อัลบั้มปัจจุบัน"
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:67
+msgid "Add selected songs to the play queue after the currently playing album"
+msgstr ""
+
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:71
+#, fuzzy
+#| msgid "Artist"
+msgid "Current Artist"
 msgstr "ศิลปิน"
 
-#: ../src/PlaylistView.cs:100
-msgid "Title"
-msgstr "ชื่อเพลง"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:72
+msgid "Add selected songs to the play queue after the currently playing artist"
+msgstr ""
 
-#: ../src/PlaylistView.cs:103
-msgid "Album"
-msgstr "อัลบั้ม"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:79
+msgid "Refresh random tracks in the play queue"
+msgstr ""
 
-#: ../src/PlaylistView.cs:112
-msgid "Time"
-msgstr "ความยาว"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:84
+msgid "Randomize the playback order of items in the play queue"
+msgstr ""
 
-#: ../src/PlaylistView.cs:123
-msgid "Plays"
-msgstr "จำนวนการเล่น"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:88
+msgid "Add More"
+msgstr "เพิ่มอีก"
 
-#: ../src/PlaylistView.cs:130
-msgid "Last Played"
-msgstr "เล่นล่าสุด"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:89
+msgid "Add more random tracks to the play queue"
+msgstr ""
 
-#: ../src/PlaylistView.cs:510
-msgid "N/A"
-msgstr "ไม่มีข้อมูล"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:94
+msgid "Remove all tracks from the play queue"
+msgstr ""
 
-#: ../src/SourceView.cs:431
-msgid "Could not import tracks"
-msgstr "ไม่สามารถนำเข้าเพลงได้"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs:103
+msgid "Clear the play queue when quitting"
+msgstr ""
 
-#: ../src/ToggleStates.cs:79
-msgid "Continuous"
-msgstr "ตามลำดับ"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:88
+msgid "Remove From Play Queue"
+msgstr ""
 
-#: ../src/TrackProperties.cs:184
-msgid "Set all Track Numbers to this value"
-msgstr "ตั้งลำดับเพลงทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:952
+msgid "Number of _played songs to show"
+msgstr ""
 
-#: ../src/TrackProperties.cs:185
-msgid "Automatically Set All Track Numbers"
-msgstr "ตั้งลำดับเพลงทั้งหมดโดยอัตโนมัติ"
+#: ../src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueSource.cs:958
+msgid "Number of _upcoming songs to show"
+msgstr ""
 
-#: ../src/TrackProperties.cs:186
-msgid "Set all Track Counts to this value"
-msgstr "ตั้งจำนวนเพลงทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastFeedModel.cs:47
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:89
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:86
+msgid "Podcast"
+msgstr ""
 
-#: ../src/TrackProperties.cs:187
-msgid "Set all Artists to this value"
-msgstr "ตั้งศิลปินทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastFeedModel.cs:69
+#, csharp-format
+msgid "All Podcasts ({0})"
+msgstr ""
 
-#: ../src/TrackProperties.cs:188
-msgid "Set all Albums to this value"
-msgstr "ตั้งอัลบั้มทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:104
+#, fuzzy
+#| msgid "Local Folder"
+msgid "Podcasts Folder"
+msgstr "โฟลเดอร์ในเครื่อง"
 
-#: ../src/TrackProperties.cs:189
-msgid "Set all Titles to this value"
-msgstr "ตั้งชื่อเพลงทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:131
+msgid "Remove Podcast"
+msgstr "ลบพอดคาสต์"
 
-#: ../src/TrackProperties.cs:190
-msgid "Set all Genres to this value"
-msgstr "ตั้งประเภทเพลงทั้งหมดเป็นค่านี้"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:136
+msgid "Disable Auto Updates"
+msgstr "ปิดการปรับข้อมูลอัตโนมัติ"
 
-#: ../src/TrackProperties.cs:234
-msgid "Never Played"
-msgstr "ไม่เคยเล่น"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:154
+#, csharp-format
+msgid "Network error updating {0}"
+msgstr ""
 
-#: ../src/TrackProperties.cs:239
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:160
 #, csharp-format
-msgid "Editing Song {0} of {1}"
-msgstr "แก้ไขข้อมูลเพลงที่ {0} จาก {1}"
+msgid "Parsing error updating {0}"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:163
+#, fuzzy, csharp-format
+#| msgid "Authentication Required"
+msgid "Authentication error updating {0}"
+msgstr "ต้องการรหัสผ่าน"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:166
+#, fuzzy, csharp-format
+#| msgid "Error Burning CD"
+msgid "Error updating {0}"
+msgstr "เกิดความผิดพลาดในการเขียนซีดี"
 
-#: ../src/TrackProperties.cs:246 ../src/TrackProperties.cs:247
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:222
+#, fuzzy
+#| msgid "Search for songs"
+msgid "Search your podcasts"
+msgstr "ค้นหาเพลง"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:88
+msgid "Published"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:285
+#, fuzzy
+#| msgid "New CD"
+msgid "New"
+msgstr "ซีดีใหม่"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:286
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellDownloadStatus.cs:57
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:66
+msgid "Downloaded"
+msgstr "ดาวน์โหลดแล้ว"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Data/PodcastSource.cs:312
 #, csharp-format
-msgid "File: {0}"
-msgstr "แฟ้ม: {0}"
+msgid "{0} episode"
+msgid_plural "{0} episodes"
+msgstr[0] "{0} ตอน"
+msgstr[1] "{0} ตอน"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellDownloadStatus.cs:58
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellUnheard.cs:58
+msgid "All Items"
+msgstr "ทุกรายการ"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellDownloadStatus.cs:59
+msgid "Not Downloaded"
+msgstr "ยังไม่ดาวน์โหลด"
 
-#: ../src/TrackProperties.cs:253
-msgid "KB/Second"
-msgstr "KB/วินาที"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcast.cs:113
+msgid "Never updated"
+msgstr "ยังไม่เคยปรับข้อมูล"
 
-#: ../src/TrackProperties.cs:254
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcast.cs:115
 #, csharp-format
-msgid "{0} KHz"
-msgstr "{0} KHz"
+msgid "Updated at {0}"
+msgstr "ปรับข้อมูลเมื่อ {0}"
 
-#: ../src/TrackProperties.cs:255
-msgid "Yes"
-msgstr "ใช่"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcast.cs:117
+#, csharp-format
+msgid "Updated {0}"
+msgstr "ปรับข้อมูล {0}"
 
-#: ../src/TrackProperties.cs:255
-msgid "No"
-msgstr "ไม่ใช่"
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellPodcastStatusIndicator.cs:62
+msgid "Downloading"
+msgstr "กำลังดาวน์โหลด"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellUnheard.cs:57
+msgid "New Items"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/ColumnCellUnheard.cs:59
+msgid "Old Items"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:50
+msgid "Downloading Podcast(s)"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/DownloadManager/DownloadUserJob.cs:52
+msgid "Cancel all podcast downloads?"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/HeaderWidget.cs:99
+msgid "_Limit to episodes from"
+msgstr ""
+
+#. "<control><shift>U",
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:73
+msgid "Check all podcasts for new episodes"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:78
+msgid "Add Podcast..."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:79
+msgid "Subscribe to a new podcast"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:93
+msgid "Unsubscribe and Delete"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:99
+msgid "Check for New Episodes"
+msgstr "ตรวจสอบตอนใหม่"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:105
+msgid "Download All Episodes"
+msgstr "ดาวน์โหลดทุกตอน"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:111
+#, fuzzy
+#| msgid "Visit the Banshee Home Page"
+msgid "Visit Podcast Homepage"
+msgstr "ไปยังโฮมเพจของ Banshee"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:123
+msgid "Mark as New"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:129
+msgid "Archive"
+msgstr ""
+
+#. Translators: this is a verb used as a button name, not a noun
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:135
+msgid "Download"
+msgstr "ดาวน์โหลด"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:141
+msgid "Cancel Download"
+msgstr "ยกเลิกการดาวน์โหลด"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:153
+msgid "Visit Website"
+msgstr "ไปที่เว็บไซต์"
 
-#: ../src/VersionInformationDialog.cs:62
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:165
+msgid "Add Podcast"
+msgstr "เพิ่มพอดคาสต์"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:262
+#, csharp-format
+msgid "Delete File"
+msgid_plural "Delete Files"
+msgstr[0] "ลบแฟ้ม"
+msgstr[1] "ลบแฟ้ม"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:343
+msgid "Invalid URL"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs:344
+msgid "Podcast URL is invalid."
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastEpisodePage.cs:109
+msgid "Episode Details"
+msgstr "รายละเอียดของตอน"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:85
+msgid "Last updated:"
+msgstr "ปรับข้อมูลล่าสุด:"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:89
+msgid "Podcast Name:"
+msgstr "ชื่อพอดคาสต์:"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:99
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastPropertiesDialog.cs:85
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:146
+msgid "URL:"
+msgstr "URL:"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:103
+msgid "When feed is updated:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastFeedPropertiesDialog.cs:119
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastPropertiesDialog.cs:105
+#, fuzzy
+#| msgid "No MP3-compatible encoders available"
+msgid "No description available"
+msgstr "ไม่มีตัวลงรหัสที่เข้ากันกับ MP3"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastPropertiesDialog.cs:77
+msgid "Podcast:"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:92
+msgid "Subscribe to New Podcast"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:100
+#, fuzzy
+#| msgid "Enter the address of the file you would like to open:"
+msgid ""
+"Please enter the URL of the podcast to which you would like to subscribe."
+msgstr "ป้อนที่อยู่ของแฟ้มที่คุณต้องการเปิด:"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/PodcastSubscribeDialog.cs:112
+msgid "When new episodes are available:  "
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/SyncPreferenceComboBox.cs:41
+msgid "Download all episodes"
+msgstr "ดาวน์โหลดตอนทั้งหมด"
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/SyncPreferenceComboBox.cs:42
+msgid "Download the most recent episode"
+msgstr ""
+
+#: ../src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastManager/Dialog/SyncPreferenceComboBox.cs:43
+msgid "Let me decide which episodes to download"
+msgstr ""
+
+#: ../src/Extensions/Banshee.RemoteAudio/Banshee.RemoteAudio/RemoteSpeakersWidget.cs:51
+#, fuzzy
+#| msgid "_Search:"
+msgid "_Speaker:"
+msgstr "_ค้นหา:"
+
+#: ../src/Extensions/Banshee.SqlDebugConsole/Banshee.SqlDebugConsole/SqlActions.cs:59
+msgid "Show SQL Console"
+msgstr ""
+
+#: ../src/Extensions/Banshee.SqlDebugConsole/Banshee.SqlDebugConsole/SqlActions.cs:64
+msgid "Start SQL Monitoring"
+msgstr ""
+
+#: ../src/Extensions/Banshee.SqlDebugConsole/Banshee.SqlDebugConsole/SqlActions.cs:69
+msgid "Stop SQL Monitoring"
+msgstr ""
+
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube.Gui/VideoStreamTile.cs:136
+msgid "Uploaded by"
+msgstr "อัปโหลดโดย"
+
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube.Gui/VideoStreamTile.cs:233
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube.Gui/VideoStreamTile.cs:234
+msgid "Play in Banshee..."
+msgstr "เล่นด้วย Banshee..."
+
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube.Gui/VideoStreamTile.cs:237
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube.Gui/VideoStreamTile.cs:238
+msgid "Play in Web Browser..."
+msgstr "เล่นในเว็บเบราว์เซอร์..."
+
+#: ../src/Extensions/Banshee.YouTube/Banshee.YouTube/YouTubePane.cs:61
+msgid "No videos found"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/Accessibility/ColumnHeaderCellTextAccessible.cs:36
+msgid "open context menu"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/Accessibility/ColumnHeaderCellTextAccessible.cs:37
+msgid "click"
+msgstr "คลิก"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/Accessibility/ColumnHeaderCellTextAccessible.cs:37
+msgid "menu"
+msgstr "เมนู"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Header.cs:612
+#, csharp-format
+msgid "Hide <i>{0}</i>"
+msgstr ""
+
+#. Translators: {0} is substituted with the application name
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/ExceptionDialog.cs:53
+#, csharp-format
+#| msgid "Banshee Encountered a Fatal Error"
+msgid "{0} Encountered a Fatal Error"
+msgstr "{0} พบข้อผิดพลาดร้ายแรง"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/ExceptionDialog.cs:92
+msgid "Error Details"
+msgstr "รายละเอียดข้อผิดพลาด:"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/ExceptionDialog.cs:136
+msgid "An unhandled exception was thrown: "
+msgstr "มีสิ่งผิดปกติที่ไม่ได้เตรียมรับมือเกิดขึ้น:"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/VersionInformationDialog.cs:58
 msgid "Assembly Version Information"
 msgstr "ข้อมูลรุ่นของส่วนประกอบต่างๆ"
 
-#: ../src/VersionInformationDialog.cs:68
+#: ../src/Hyena/Hyena.Gui/Hyena.Gui.Dialogs/VersionInformationDialog.cs:64
 msgid "Assembly Name"
 msgstr "ชื่อส่วนประกอบ"
 
-#: ../src/VersionInformationDialog.cs:70
-msgid "Version"
-msgstr "รุ่น"
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/FileSizeQueryValueEntry.cs:62
+msgid "KB"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:86
+#, fuzzy
+#| msgid "Configuration"
+msgid "Condition:"
+msgstr "ตั้งค่า"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:104
+msgid "_Match"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:111
+#, fuzzy
+#| msgid "All"
+msgid "all"
+msgstr "ทั้งหมด"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:112
+msgid "any"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryBox.cs:117
+msgid "of the following:"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryLimitBox.cs:58
+msgid "_Limit to"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/QueryLimitBox.cs:85
+msgid "selected by"
+msgstr ""
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/RelativeTimeSpanQueryValueEntry.cs:42
+msgid "ago"
+msgstr "ที่แล้ว"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:59
+msgid "seconds"
+msgstr "วินาที"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:62
+msgid "days"
+msgstr "วัน"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:63
+msgid "weeks"
+msgstr "สัปดาห์"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:64
+msgid "months"
+msgstr "เดือน"
+
+#: ../src/Hyena/Hyena.Gui/Hyena.Query.Gui/TimeSpanQueryValueEntry.cs:65
+msgid "years"
+msgstr "ปี"
+
+#: ../src/Hyena/Hyena/Hyena.Downloader/DownloadManagerJob.cs:71
+#, csharp-format
+msgid "{0} download at {1}/s"
+msgid_plural "{0} downloads at {1}/s"
+msgstr[0] ""
+msgstr[1] ""
+
+#: ../src/Hyena/Hyena/Hyena.Downloader/DownloadManagerJob.cs:79
+#, csharp-format
+msgid "{0} download at {1}/s ({2} pending)"
+msgid_plural "{0} downloads at {1}/s ({2} pending)"
+msgstr[0] ""
+msgstr[1] ""
+
+#. public static readonly Operator Equal              = new Operator ("equals", "= {0}", "==", "=", ":");
+#. public static readonly Operator NotEqual           = new Operator ("notEqual", "!= {0}", true, "!=", "!:");
+#. public static readonly Operator LessThanEqual      = new Operator ("lessThanEquals", "<= {0}", "<=");
+#. public static readonly Operator GreaterThanEqual   = new Operator ("greaterThanEquals", ">= {0}", ">=");
+#: ../src/Hyena/Hyena/Hyena.Query/DateQueryValue.cs:47
+msgid "before"
+msgstr "ก่อน"
+
+#: ../src/Hyena/Hyena/Hyena.Query/DateQueryValue.cs:48
+msgid "after"
+msgstr "หลัง"
+
+#: ../src/Hyena/Hyena/Hyena.Query/EnumQueryValue.cs:43
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:41
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:45
+msgid "is"
+msgstr "เท่ากับ"
+
+#: ../src/Hyena/Hyena/Hyena.Query/EnumQueryValue.cs:44
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:42
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:46
+msgid "is not"
+msgstr "ไม่เท่ากับ"
+
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:43
+#: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:47
+msgid "at most"
+msgstr "ไม่เกิน"
+
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:44
+#: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:46
+msgid "at least"
+msgstr "อย่างน้อย"
+
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:45
+#: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:45
+msgid "less than"
+msgstr "น้อยกว่า"
+
+#. The SQL operators in these Operators are reversed from normal on purpose
+#: ../src/Hyena/Hyena/Hyena.Query/IntegerQueryValue.cs:46
+#: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:44
+msgid "more than"
+msgstr "มากกว่า"
+
+#: ../src/Hyena/Hyena/Hyena.Query/NullQueryValue.cs:41
+msgid "empty"
+msgstr "ว่างเปล่า"
+
+#: ../src/Hyena/Hyena/Hyena.Query/RelativeTimeSpanQueryValue.cs:90
+#, csharp-format
+msgid "{0} ago"
+msgstr "{0} ที่แล้ว"
+
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:43
+msgid "contains"
+msgstr "มี"
+
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:44
+msgid "doesn't contain"
+msgstr "ไม่มี"
+
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:47
+msgid "starts with"
+msgstr "ขึ้นต้นด้วย"
+
+#: ../src/Hyena/Hyena/Hyena.Query/StringQueryValue.cs:48
+msgid "ends with"
+msgstr "ลงท้ายด้วย"
+
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginDialog.cs:76
+msgid "Last.fm Account Login"
+msgstr "เข้าระบบ Last.fm"
+
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginDialog.cs:79
+msgid "Please enter your Last.fm account credentials."
+msgstr "กรุณาป้อนข้อมูลลับของบัญชี Last.fm ของคุณ"
+
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginDialog.cs:106
+msgid "Save and Log In"
+msgstr "บันทึกและเข้าระบบ"
+
+#: ../src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginForm.cs:98
+msgid "Authorize for Last.fm"
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/AudioscrobblerConnection.cs:447
+msgid ""
+"Last.fm username is invalid or Banshee is not authorized to access your "
+"account."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:271
+msgid "This service does not exist."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:275
+msgid "Stations are only available to paying Last.fm subscribers."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:277
+msgid "This station is not available."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:279
+msgid "The request is missing a required parameter."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:281
+msgid "The specified resource is invalid."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:283
+msgid "Server error, please try again later."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:285
+msgid "Invalid authentication information, please re-authenticate."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:287
+msgid "The API key used by this application is invalid."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:289
+msgid ""
+"The streaming system is offline for maintenance, please try again later."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:291
+msgid "The method signature is invalid."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:296
+msgid "There is not enough content to play this station."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:298
+msgid "This group does not have enough members for radio."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:300
+msgid "This artist does not have enough fans for radio."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:302
+msgid "There are not enough neighbours for this station."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:304
+msgid "There was an unknown error."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:313
+msgid "Not connected to Last.fm."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:315
+msgid "Account details are needed before you can connect to Last.fm"
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:317
+msgid "No network connection detected."
+msgstr ""
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:319
+#, fuzzy
+#| msgid "Last.fm Username"
+msgid "Last.fm username is invalid."
+msgstr "ชื่อผู้ใช้ Last.fm"
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:323
+msgid "Connecting to Last.fm."
+msgstr "กำลังเชื่อมต่อกับ Last.fm"
+
+#: ../src/Libraries/Lastfm/Lastfm/RadioConnection.cs:325
+msgid "Connected to Last.fm."
+msgstr "เชื่อมต่อกับ Last.fm แล้ว"
+
+#: ../src/Libraries/Migo/Migo.Syndication/Feed.cs:147
+#: ../src/Libraries/Migo/Migo.Syndication/RssParser.cs:97
+#: ../src/Libraries/Migo/Migo.Syndication/RssParser.cs:100
+#, fuzzy
+#| msgid "Unknown Artist"
+msgid "Unknown Podcast"
+msgstr "ไม่มีชื่อศิลปิน"
+
+#~ msgid "<b>Advanced Properties</b>"
+#~ msgstr "<b>คุณสมบัติเพิ่มเติม</b>"
+
+#~ msgid "<b>CD Importing</b>"
+#~ msgstr "<b>การแปลงข้อมูลเข้าจากซีดี</b>"
+
+#~ msgid "<b>Loading...</b>"
+#~ msgstr "<b>กำลังเรียก...</b>"
+
+#~ msgid "<b>Session Information</b>"
+#~ msgstr "<b>ข้อมูลเซสชัน</b>"
+
+#~ msgid "<b>Write Options</b>"
+#~ msgstr "<b>ตัวเลือกการเขียน</b>"
+
+#~ msgid "<big><b>Editing Song</b></big>"
+#~ msgstr "<big><b>แก้ไขข้อมูลเพลง</b></big>"
+
+#~ msgid "<small><i><Unknown></i></small>"
+#~ msgstr "<small><i><ไม่มีข้อมูล></i></small>"
+
+#~ msgid "Albu_m"
+#~ msgstr "_อัลบั้ม"
+
+#~ msgid "Choose an import source:"
+#~ msgstr "เลือกแหล่งของเพลงที่จะนำเข้า:"
+
+#~ msgid "Delete the active preset"
+#~ msgstr "ลบค่าตั้งสำเร็จที่ใช้งานอยู่"
+
+#~ msgid "Disk Usage:"
+#~ msgstr "เนื้อที่ดิสก์ที่ใช้:"
+
+#~ msgid "Eject disc after writing"
+#~ msgstr "ดันแผ่นออกหลังจากเขียนเสร็จ"
+
+#~ msgid "Import Music Source"
+#~ msgstr "นำเข้าเพลง"
+
+#~ msgid "Last Played On:"
+#~ msgstr "เล่นครั้งล่าสุด:"
+
+#~ msgid "Number of Plays:"
+#~ msgstr "จำนวนครั้งที่เล่น"
+
+#~ msgid "VBR:"
+#~ msgstr "VBR:"
+
+#~ msgid "Write disc to:"
+#~ msgstr "เขียนลงแผ่นใน:"
+
+#~ msgid "Write speed:"
+#~ msgstr "ความเร็วการเขียน:"
+
+#~ msgid "_Artist"
+#~ msgstr "_ศิลปิน"
+
+#~ msgid "_Title"
+#~ msgstr "_ชื่อ"
+
+#~ msgid "_Write"
+#~ msgstr "เ_ขียน"
+
+#~ msgid ""
+#~ "Can be either \"systemio\" (.NET System.IO), \"unix\" (Native Unix), or "
+#~ "\"gnomevfs\" (GNOME VFS); takes effect on Banshee start (restart "
+#~ "necessary)"
+#~ msgstr ""
+#~ "ค่าที่เป็นไปได้คือ \"systemio\" (System.IO ของ .NET), \"unix\" (ยูนิกซ์แท้), หรือ "
+#~ "\"gnomevfs\" (GNOME VFS) จะมีผลเมื่อ Banshee เริ่มทำงาน (ต้องเข้าโปรแกรมใหม่)"
+
+#~ msgid ""
+#~ "Copy and rename music to banshee music library directory when importing"
+#~ msgstr "คัดลอกและเปลี่ยนชื่อแฟ้มเพลงเข้ามาในโฟลเดอร์ไลบรารีเพลงของ Banshee ขณะนำเข้า"
+
+#~ msgid "Copy music on import"
+#~ msgstr "คัดลอกแฟ้มเพลงขณะนำเข้า"
+
+#~ msgid "Enable Special Keys"
+#~ msgstr "เปิดใช้ปุ่มแป้นพิมพ์พิเศษ"
+
+#~ msgid ""
+#~ "Enabled Special Keys (Multimedia Keys) support for Play/Pause/Next/"
+#~ "Previous; works with mappings set through Gnome Shortcuts capplet"
+#~ msgstr ""
+#~ "เปิดใช้การสนับสนุนปุ่มแป้นพิมพ์พิเศษ (ปุ่มเล่นสื่อผสม) สำหรับ เล่น/พัก/ถัดไป/ก่อนหน้า "
+#~ "ใช้งานได้กับชุดปุ่มลัดที่กำหนดในหัวข้อปุ่มลัดของ GNOME"
+
+#~ msgid "File Name Pattern"
+#~ msgstr "รูปแบบชื่อแฟ้ม"
+
+#~ msgid ""
+#~ "Format for creating filenames/directories for ripped tracks, imported "
+#~ "music, etc. Format is relative to the Banshee music directory... do not "
+#~ "form an absolute path! Tokens: %artist%, %album%, %title%, %track_number"
+#~ "%, %track_count%, %track_number_nz% (No prefixed zero), %track_count_nz% "
+#~ "(No prefixed zero)."
+#~ msgstr ""
+#~ "รูปแบบสำหรับตั้งชื่อแฟ้มหรือโฟลเดอร์สำหรับเพลงที่คัดแยกออกมาจากแผ่น "
+#~ "หรือเพลงที่นำเข้าจากแหล่งอื่น ฯลฯ รูปแบบดังกล่าวจะสัมพัทธ์กับโฟลเดอร์เพลงของ Banshee "
+#~ "ไม่ใช่เป็นพาธเต็ม! โทเคนที่ใช้ได้คือ: %artist%, %album%, %title%, %track_number%, %"
+#~ "track_count%, %track_number_nz% (ไม่มีเลขศูนย์นำหน้า), %track_count_nz% "
+#~ "(ไม่มีเลขศูนย์นำหน้า)"
+
+#~ msgid "Height of the main interface window."
+#~ msgstr "ความสูงของหน้าต่างหลักสำหรับติดต่อผู้ใช้"
+
+#~ msgid "Move music on info save"
+#~ msgstr "ย้ายแฟ้มเพลงเมื่อบันทึกข้อมูลเพลง"
+
+#~ msgid ""
+#~ "Move music within banshee music library directory when saving track info"
+#~ msgstr "ย้ายแฟ้มเพลงในโฟลเดอร์ไลบรารีเพลงของ Banshee เมื่อบันทึกข้อมูลเพลง"
+
+#~ msgid "Name of media playback engine."
+#~ msgstr "ชื่อของกลไกการเล่นสื่อ"
+
+#~ msgid "Pixel position of Main Player Window on the X Axis"
+#~ msgstr "ตำแหน่งของหน้าต่างเล่นเพลงหลักในแนวแกน X"
+
+#~ msgid "Pixel position of Main Player Window on the Y Axis"
+#~ msgstr "ตำแหน่งของหน้าต่างเล่นเพลงหลักในแนวแกน Y"
+
+#~ msgid "Set the IO backend in Banshee"
+#~ msgstr "กำหนดแบ็กเอนด์ของ IO ใน Banshee"
+
+#~ msgid "Show advanced track properties"
+#~ msgstr "แสดงข้อมูลเพิ่มเติมของเพลง"
+
+#~ msgid "Show the Initial Import Dialog"
+#~ msgstr "แสดงกล่องโต้ตอบนำเข้าเพลงเริ่มแรก"
+
+#~ msgid "Show the Initial Import Dialog when the Banshee library is empty"
+#~ msgstr "แสดงกล่องโต้ตอบนำเข้าเพลงเริ่มแรกถ้าไลบรารีของ Banshee ยังไม่มีเพลง"
+
+#~ msgid "Source View Width"
+#~ msgstr "ความกว้างของช่องแหล่งเพลง"
+
+#~ msgid "True if main window is to be maximized, false if it is not."
+#~ msgstr "เป็นจริงถ้าจะให้หน้าต่างอยู่ในสถานะขยายเต็มจอ หรือเป็นเท็จถ้าไม่ใช่"
+
+#~ msgid ""
+#~ "True if the advanced expander should be expanded in the track properties "
+#~ "dialog, false if it should be closed"
+#~ msgstr ""
+#~ "เป็นจริงถ้าจะให้ขยายช่องข้อมูลเพิ่มเติมของเพลงในกล่องโต้ตอบข้อมูลเพลง "
+#~ "หรือเป็นเท็จถ้าจะไม่ให้ขยาย"
+
+#~ msgid "Visibility of Album Column."
+#~ msgstr "แสดงคอลัมน์อัลบั้มหรือไม่"
+
+#~ msgid "Visibility of Artist Column."
+#~ msgstr "แสดงคอลัมน์ศิลปินหรือไม่"
+
+#~ msgid "Visibility of Time Column."
+#~ msgstr "แสดงคอลัมน์เวลาหรือไม่"
+
+#~ msgid "Visibility of Title Column."
+#~ msgstr "แสดงคอลัมน์ชื่อเพลงหรือไม่"
+
+#~ msgid "Visibility of Track Column."
+#~ msgstr "แสดงคอลัมน์ลำดับเพลงหรือไม่"
+
+#~ msgid "Visibility of Year Column."
+#~ msgstr "แสดงคอลัมน์ปีหรือไม่"
+
+#~ msgid "Volume Output Level"
+#~ msgstr "ความดังของเสียง"
+
+#~ msgid ""
+#~ "Volume of playback relative to mixer output (except on Helix, which sets "
+#~ "volume directly on PCM"
+#~ msgstr ""
+#~ "ความดังของเสียงที่เล่น เทียบกับผลลัพธ์ของเครื่องมือปรับความดังเสียงของระบบ (ยกเว้นบน "
+#~ "Helix ซึ่งกำหนดความดังของเสียงโดยตรงที่ PCM"
+
+#~ msgid "Width of Album Column."
+#~ msgstr "ความกว้างของคอลัมน์อัลบั้ม"
+
+#~ msgid "Width of Artist Column."
+#~ msgstr "ความกว้างของคอลัมน์ศิลปิน"
+
+#~ msgid "Width of Last Played Column."
+#~ msgstr "ความกว้างของคอลัมน์เวลาเล่นล่าสุด"
+
+#~ msgid "Width of Plays Column."
+#~ msgstr "ความกว้างของคอลัมน์จำนวนครั้งที่เล่น"
+
+#~ msgid "Width of Rating Column."
+#~ msgstr "ความกว้างของคอลัมน์คะแนนนิยม"
+
+#~ msgid "Width of Source View Column."
+#~ msgstr "ความกว้างของคอลัมน์แสดงแหล่งเพลง"
+
+#~ msgid "Width of Time Column."
+#~ msgstr "ความกว้างของคอลัมน์เวลา"
+
+#~ msgid "Width of Title Column."
+#~ msgstr "ความกว้างของคอลัมน์ชื่อเพลง"
+
+#~ msgid "Width of Track Column."
+#~ msgstr "ความกว้างของคอลัมน์ลำดับเพลง"
+
+#~ msgid "Width of Year Column."
+#~ msgstr "ความกว้างของคอลัมน์ปี"
+
+#~ msgid "Width of the main interface window."
+#~ msgstr "ความกว้างของหน้าต่างหลักสำหรับติดต่อผู้ใช้"
+
+#~ msgid "Window Height"
+#~ msgstr "ความสูงของหน้าต่าง"
+
+#~ msgid "Window Position X"
+#~ msgstr "ตำแหน่งหน้าต่างในแนวแกน X"
+
+#~ msgid "Window Position Y"
+#~ msgstr "ตำแหน่งหน้าต่างในแนวแกน Y"
+
+#~ msgid "Window Width"
+#~ msgstr "ความกว้างของหน้าต่าง"
+
+#~ msgid "Could not initialize cdparanoia"
+#~ msgstr "ไม่สามารถตั้งต้น cdparanoia"
+
+#~ msgid "Could not create GNOME VFS output plugin"
+#~ msgstr "ไม่สามารถสร้างปลั๊กอินข้อมูลออกทาง GNOME VFS"
+
+#~ msgid "Encoding element does not support tagging!"
+#~ msgstr "อิลิเมนต์ลงรหัสไม่สนับสนุนการแท็ก!"
+
+#~ msgid "No decoder could be found for source format."
+#~ msgstr "ไม่พบตัวอ่านรหัสสำหรับฟอร์แมตข้อมูลเข้า"
+
+#~ msgid "Could not stat encoded file"
+#~ msgstr "ไม่สามารถตรวจสอบสถานะแฟ้มผลลัพธ์"
+
+#~ msgid "Could not create 'gnomevfssrc' plugin"
+#~ msgstr "ไม่สามารถสร้างปลั๊กอิน 'gnomevfssrc'"
+
+#~ msgid "Could not create 'gnomevfssink' plugin"
+#~ msgstr "ไม่สามารถสร้างปลั๊กอิน 'gnomevfssink'"
+
+#~ msgid "Could not create new HAL context"
+#~ msgstr "ไม่สามารถสร้าง HAL context ใหม่ได้"
+
+#~ msgid "Could not integrate HAL with mainloop: %s"
+#~ msgstr "ไม่สามารถเชื่อมรวม HAL กับโปรแกรมหลัก: %s"
+
+#~ msgid "Could not initialize HAL context"
+#~ msgstr "ไม่สามารถตั้งต้น HAL context"
+
+#~ msgid "Could not get device list from HAL"
+#~ msgstr "ไม่สามารถอ่านรายการอุปกรณ์จาก HAL"
+
+#~ msgid "Import _Folder..."
+#~ msgstr "นำเข้าโ_ฟลเดอร์..."
+
+#~ msgid "Import the contents of an entire folder"
+#~ msgstr "นำเข้าเพลงทั้งหมดในโฟลเดอร์"
+
+#~ msgid "Import Files..."
+#~ msgstr "นำเข้าแฟ้ม..."
+
+#~ msgid "Import files inside a folder"
+#~ msgstr "นำเข้าแฟ้มภายในโฟลเดอร์"
+
+#~ msgid "Select all songs in song list"
+#~ msgstr "เลือกเพลงทั้งหมดในรายการ"
+
+#~ msgid "Unselect all songs in song list"
+#~ msgstr "ยกเลิกการเลือกเพลงทั้งหมดในรายการ"
+
+#~ msgid "Plugins..."
+#~ msgstr "ปลั๊กอิน..."
+
+#~ msgid "Configure Banshee plugins"
+#~ msgstr "ปรับแต่งปลั๊กอินของ Banshee"
+
+#~ msgid "Columns..."
+#~ msgstr "คอลัมน์..."
+
+#~ msgid "Select which columns to display in the song list"
+#~ msgstr "เลือกคอลัมน์ที่ต้องการแสดงในรายการเพลง"
+
+#~ msgid "Logged Events Viewer..."
+#~ msgstr "แสดงบันทึกเหตุการณ์..."
+
+#~ msgid "View a detailed log of events"
+#~ msgstr "แสดงบันทึกเหตุการณ์ต่างๆ อย่างละเอียด"
+
+#~ msgid "Song Menu"
+#~ msgstr "เมนูเพลง"
+
+#~ msgid "By matching genre"
+#~ msgstr "โดยค้นหาประเภทเพลง"
+
+#~ msgid "Search all songs of this genre"
+#~ msgstr "ค้นหาเพลงทั้งหมดที่อยู่ในประเภทนี้"
+
+#~ msgid "Repeat None"
+#~ msgstr "ไม่เล่นซ้ำ"
+
+#~ msgid "Toggle between shuffle or continuous playback modes"
+#~ msgstr "สลับระหว่างการสุ่มกับการเล่นเพลงตามลำดับ"
+
+#~ msgid "Seek Backward"
+#~ msgstr "เลื่อนถอยหลัง"
+
+#~ msgid "Seek backward in current song"
+#~ msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันถอยหลัง"
+
+#~ msgid "Seek Forward"
+#~ msgstr "เลื่อนไปหน้า"
+
+#~ msgid "Seek forward in current song"
+#~ msgstr "เลื่อนตำแหน่งที่เล่นเพลงปัจจุบันไปข้างหน้า"
+
+#~ msgid "Synchronize"
+#~ msgstr "ปรับข้อมูลให้ตรงกัน"
+
+#~ msgid "Save changes to device or synchronize music library"
+#~ msgstr "บันทึกการแก้ไขลงในอุปกรณ์ หรือปรับข้อมูลไลบรารีเพลงให้ตรงกัน"
+
+#~ msgid "HAL is not initialized"
+#~ msgstr "ยังไม่ได้เริ่มต้นการทำงานของ HAL"
+
+#~ msgid "Cannot Eject CD"
+#~ msgstr "ไม่สามารถดันแผ่นออกได้"
+
+#~ msgid ""
+#~ "The CD cannot be ejected while it is importing. Stop the import first."
+#~ msgstr "ไม่สามารถดันแผ่นซีดีออกในระหว่างนำเข้าเพลงได้ คุณต้องหยุดนำเข้าเพลงก่อน"
+
+#~ msgid "Importing CD"
+#~ msgstr "กำลังนำเข้าซีดี"
+
+#~ msgid ""
+#~ "The device node '{0}' differs from the device node already set for "
+#~ "previously queued tracks ({1})"
+#~ msgstr "อุปกรณ์ '{0}' แตกต่างจากอุปกรณ์ที่กำหนดไว้สำหรับเพลงที่เข้าคิวไว้ก่อนหน้านี้ ({1})"
+
+#~ msgid "Data Disc:"
+#~ msgstr "ซีดีข้อมูล:"
+
+#~ msgid "Unknown Minutes"
+#~ msgstr "ไม่ทราบจำนวนนาที"
+
+#~ msgid "Unknown MB"
+#~ msgstr "ไม่ทราบจำนวน MB"
+
+#~ msgid "New Audio CD"
+#~ msgstr "ซีดีเพลงใหม่"
+
+#~ msgid "Create a new audio CD"
+#~ msgstr "สร้างซีดีเพลงใหม่"
+
+#~ msgid "No CD recording hardware was found."
+#~ msgstr "ไม่พบอุปกรณ์สำหรับเขียนซีดี"
+
+#~ msgid "MP3"
+#~ msgstr "ซีดี MP3"
+
+#~ msgid "No CD writers were found on your system."
+#~ msgstr "ไม่พบเครื่องเขียนซีดีในระบบ"
+
+#~ msgid "Insert Blank CD"
+#~ msgstr "กรุณาใส่ซีดีเปล่า"
+
+#~ msgid "Please insert a blank CD disk for the write process."
+#~ msgstr "กรุณาใส่แผ่นซีดีเปล่าสำหรับการเขียน"
+
+#~ msgid "The inserted media is not large enough to hold your selected music."
+#~ msgstr "สื่อที่ใช้มีขนาดไม่พอสำหรับเพลงที่คุณเลือก"
+
+#~ msgid "{0} more minute is needed on the media."
+#~ msgid_plural "{0} more minutes are needed on the media."
+#~ msgstr[0] "ต้องการความยาวเพิ่มในแผ่นอีก {0} นาที"
+#~ msgstr[1] "ต้องการความยาวเพิ่มในแผ่นอีก {0} นาที"
+
+#~ msgid "{0} more megabyte is needed on the media."
+#~ msgid_plural "{0} more megabytes are needed on the media."
+#~ msgstr[0] "ต้องการเนื้อที่เพิ่มในแผ่นอีก {0} เมกะไบต์"
+#~ msgstr[1] "ต้องการเนื้อที่เพิ่มในแผ่นอีก {0} เมกะไบต์"
+
+#~ msgid "Insufficient Disk Space"
+#~ msgstr "เนื้อที่ดิสก์ไม่พอ"
+
+#~ msgid "Creating this CD requires at least {0} MiB of free disk space."
+#~ msgstr "การสร้างแผ่นซีดีนี้ ต้องการใช้เนื้อที่ว่างอย่างน้อย {0} MiB"
+
+#~ msgid "No suitable encoder could be found to convert selected songs."
+#~ msgstr "ไม่พบตัวลงรหัสเสียงที่เหมาะสมในการแปลงเพลงที่เลือก"
+
+#~ msgid "Writing Disc"
+#~ msgstr "กำลังเขียนแผ่น"
+
+#~ msgid ""
+#~ "Stopping the disc writing process will render it useless. Would you like "
+#~ "to stop writing the disc?"
+#~ msgstr ""
+#~ "การหยุดกระบวนการเขียนแผ่นจะทำให้แผ่นใช้การไม่ได้อีกต่อไป คุณต้องการหยุดเขียนแผ่นหรือไม่?"
+
+#~ msgid "Error writing disc"
+#~ msgstr "เกิดความผิดพลาดในการเขียนแผ่น"
+
+#~ msgid "An unknown error occurred when attempting to write the disc."
+#~ msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุขณะพยายามเขียนแผ่น"
+
+#~ msgid "Disc writing complete"
+#~ msgstr "เขียนแผ่นเสร็จสิ้น"
+
+#~ msgid "The selected audio was successfully written to the disc."
+#~ msgstr "เพลงที่เลือกถูกเขียนลงแผ่นเรียบร้อย"
+
+#~ msgid "Recording contents"
+#~ msgstr "กำลังเขียนข้อมูล"
+
+#~ msgid "Fixating disc"
+#~ msgstr "กำลังปิดแผ่น"
+
+#~ msgid "Insert blank disc"
+#~ msgstr "กรุณาใส่แผ่นเปล่า"
+
+#~ msgid "Please insert a blank disc for the write process."
+#~ msgstr "กรุณาใส่แผ่นเปล่าสำหรับการเขียน"
+
+#~ msgid "CD Session"
+#~ msgstr "เซสชันซีดี"
+
+#~ msgid "Maximum"
+#~ msgstr "สูงสุด"
+
+#~ msgid "Low"
+#~ msgstr "ต่ำ"
+
+#~ msgid "Initializing Transcoder..."
+#~ msgstr "กำลังตั้งต้นตัวแปลงรหัส..."
+
+#~ msgid "Cannot initialize DapCore because HalCore is not initialized"
+#~ msgstr "ไม่สามารถตั้งต้น DapCore ได้ เพราะไม่ได้ตั้งต้น HalCore ไว้"
+
+#~ msgid "Synchronizing {0}"
+#~ msgstr "กำลังปรับข้อมูลกับ {0} ให้ตรงกัน"
+
+#~ msgid "Owner Name"
+#~ msgstr "ชื่อเจ้าของ"
+
+#~ msgid "Primary Development"
+#~ msgstr "งานพัฒนาหลัก"
+
+#~ msgid "HAL context could not be created"
+#~ msgstr "ไม่สามารถสร้าง context ของ HAL ได้"
+
+#~ msgid "D-Bus may not be working or configured properly"
+#~ msgstr "D-Bus อาจไม่ทำงานหรือไม่ได้ตั้งค่าไว้อย่างถูกต้อง"
+
+#~ msgid "Scanning for songs"
+#~ msgstr "กำลังตรวจหาเพลง"
+
+#~ msgid "Could not load track from library"
+#~ msgstr "ไม่สามารถโหลดเพลงจากไลบรารี"
+
+#~ msgid "Pipeline profile is empty."
+#~ msgstr "โพรไฟล์ของไปป์ไลน์ว่างเปล่า"
+
+#~ msgid "Pipeline profile does not have the correct number of components (7)"
+#~ msgstr "โพรไฟล์ของไปป์ไลน์มีจำนวนข้อมูลไม่ถูกต้อง (ต้องมี 7 ชิ้น)"
+
+#~ msgid "Pipeline profile does not have a lookup key"
+#~ msgstr "โพรไฟล์ของไปป์ไลน์ไม่มีคีย์สำหรับเปิดหา"
+
+#~ msgid "Pipeline profile does not have a display name"
+#~ msgstr "โพรไฟล์ของไปป์ไลน์ไม่มีชื่อดิสเพลย์"
+
+#~ msgid "Pipeline profile '{0}' does not have a file extension"
+#~ msgstr "โพรไฟล์ของไปป์ไลน์ '{0}' ไม่มีส่วนขยาย"
+
+#~ msgid "Pipeline profile '{0}' does not have a GStreamer element"
+#~ msgstr "โพรไฟล์ของไปป์ไลน์ '{0}' ไม่มีอิลิเมนต์ของ GStreamer"
+
+#~ msgid ""
+#~ "Pipeline profile '{0}' will be unavailable: GStreamer pipeline '{1}' "
+#~ "could not be run"
+#~ msgstr ""
+#~ "จะไม่สามารถใช้โพรไฟล์ของไปป์ไลน์ '{0}' ได้: ไม่สามารถเรียกใช้งานไปป์ไลน์ '{1}' ของ "
+#~ "GStreamer ได้"
+
+#~ msgid "Cannot use internal bitrate. Use BuildPipeline(bitrate) instead."
+#~ msgstr "ไม่สามารถใช้อัตราบิตภายในได้ กรุณาใช้ BuildPipeline(bitrate) แทน"
+
+#~ msgid ""
+#~ "Cannot set internal bitrate. Must copy profile and set Bitrate on copy "
+#~ "(new PipelineProfile(profile))"
+#~ msgstr ""
+#~ "ไม่สามารถกำหนดอัตราบิตภายในได้ โปรแกรมต้องคัดลอกโพรไฟล์และกำหนดอัตราบิตผ่านการคัดลอก "
+#~ "(new PipelineProfile(profile))"
+
+#~ msgid "Banshee Plugins"
+#~ msgstr "ปลั๊กอินของ Banshee"
+
+#~ msgid "Plugin Name"
+#~ msgstr "ชื่อปลั๊กอิน"
+
+#~ msgid "This plugin could not be initialized."
+#~ msgstr "ไม่สามารถตั้งต้นปลั๊กอินนี้ได้"
+
+#~ msgid "Reading table of contents from CD..."
+#~ msgstr "กำลังอ่านสารบัญจากซีดี..."
+
+#~ msgid "Searching for CD cover art..."
+#~ msgstr "กำลังค้นหาภาพปกซีดี..."
+
+#~ msgid ""
+#~ "Cannot search for CD metadata: there is no available Internet connection"
+#~ msgstr "ไม่สามารถค้นหาข้อมูลซีดีได้: ไม่ได้เชื่อมต่ออินเทอร์เน็ต"
+
+#~ msgid "Invalid Selection"
+#~ msgstr "การเลือกไม่ถูกต้อง"
+
+#~ msgid "You must select at least one track to import."
+#~ msgstr "คุณต้องเลือกเพลงที่จะนำเข้าอย่างน้อยหนึ่งเพลง"
+
+#~ msgid "Synchronizing your Device, Please Wait..."
+#~ msgstr "กำลังปรับข้อมูลกับอุปกรณ์ของคุณให้ตรงกัน กรุณารอสักครู่..."
+
+#~ msgid "You are currently importing from {0}. Would you like to stop it?"
+#~ msgstr "คุณกำลังนำเข้าเพลงจาก {0} คุณต้องการหยุดหรือไม่?"
+
+#~ msgid "Eject {0}"
+#~ msgstr "ดัน {0} ออก"
+
+#~ msgid "Name Ascending"
+#~ msgstr "ตามชื่อจากก่อนไปหลัง"
+
+#~ msgid "Name Descending"
+#~ msgstr "ตามชื่อจากหลังมาหน้า"
+
+#~ msgid "Cannot Rename Playlist"
+#~ msgstr "ไม่สามารถเปลี่ยนชื่อรายการเล่น"
+
+#~ msgid ""
+#~ "A playlist with this name already exists. Please choose another name."
+#~ msgstr "มีรายการเล่นชื่อนี้อยู่แล้ว กรุณาตั้งชื่อใหม่"
+
+#~ msgid "{0:0.00} GB"
+#~ msgstr "{0:0.00} GB"
+
+#~ msgid "Pre-processing tracks"
+#~ msgstr "กำลังประมวลผลเพลงขั้นต้น"
+
+#~ msgid "Flushing to Disk (may take time)"
+#~ msgstr "กำลังปล่อยข้อมูลลงดิสก์ (อาจใช้เวลา)"
+
+#~ msgid "Failed to synchronize iPod"
+#~ msgstr "ไม่สามารถปรับข้อมูลกับไอพอดให้ตรงกันได้"
+
+#~ msgid "Scanning"
+#~ msgstr "กำลังตรวจข้อมูล"
+
+#~ msgid "Copying Songs"
+#~ msgstr "กำลังคัดลอกเพลง"
+
+#~ msgid ": Found"
+#~ msgstr ": พบ"
+
+#~ msgid "Loading device"
+#~ msgstr "กำลังโหลดอุปกรณ์"
+
+#~ msgid ": Ready for use"
+#~ msgstr ": พร้อมใช้งาน"
+
+#~ msgid "Synchronizing Device"
+#~ msgstr "กำลังปรับข้อมูลกับอุปกรณ์ให้ตรงกัน"
+
+#~ msgid "Cannot read device"
+#~ msgstr "ไม่สามารถอ่านอุปกรณ์ได้"
+
+#~ msgid "Could not set the owner of the device."
+#~ msgstr "ไม่สามารถกำหนดเจ้าของอุปกรณ์ได้"
+
+#~ msgid "Audioscrobbler Reporting"
+#~ msgstr "รายงานสถิติไปยัง Audioscrobbler"
+
+#~ msgid "Create an account"
+#~ msgstr "สร้างบัญชีผู้ใช้"
+
+#~ msgid "Join the Banshee group"
+#~ msgstr "เข้าร่วมกับกลุ่ม Banshee"
+
+#~ msgid ""
+#~ "Your profile page on Last.fm is automatically updated whenever you listen "
+#~ "to music. It lets others see what you're listening to right now, and "
+#~ "shows charts of your listening history."
+#~ msgstr ""
+#~ "หน้าผู้ใช้บน Last.fm ของคุณจะถูกปรับข้อมูลโดยอัตโนมัติเมื่อคุณฟังเพลง "
+#~ "ผู้ใช้คนอื่นสามารถดูว่าคุณกำลังฟังเพลงอะไรอยู่ และดูรายการเพลงที่คุณเคยฟังได้"
+
+#~ msgid "Visit your Audioscrobbler profile page"
+#~ msgstr "ไปยังหน้าข้อมูลผู้ใช้ของคุณใน Audioscrobbler"
+
+#~ msgid "Visit group page"
+#~ msgstr "ไปยังหน้ากลุ่มผู้ใช้"
+
+#~ msgid "Configure..."
+#~ msgstr "ตั้งค่า..."
+
+#~ msgid ""
+#~ "Allow engine to submit song data to last.fm in the Audioscrobbler plugin"
+#~ msgstr "อนุญาตให้ส่งข้อมูลเพลงไปยัง Last.fm โดยผ่านปลั๊กอิน Audioscrobbler"
+
+#~ msgid "Enable the Audioscrobbler plugin"
+#~ msgstr "เปิดใช้งานปลั๊กอิน Audioscrobbler"
+
+#~ msgid "Your last.fm password"
+#~ msgstr "รหัสผ่าน Last.fm ของคุณ"
+
+#~ msgid "Your last.fm username"
+#~ msgstr "ชื่อผู้ใช้ Last.fm ของคุณ"
+
+#~ msgid "Share my music library with others"
+#~ msgstr "แบ่งปันไลบรารีเพลงของฉันกับคนอื่นๆ"
+
+#~ msgid "Share name:"
+#~ msgstr "ชื่อแหล่งใช้ร่วม:"
+
+#~ msgid "Banshee Music Share"
+#~ msgstr "แหล่งใช้เพลงร่วมของ Banshee"
+
+#~ msgid ""
+#~ "Allow others to browse and listen to your music from other DAAP clients"
+#~ msgstr "อนุญาตให้คนอื่นๆ เรียกดูและฟังเพลงของคุณผ่านไคลเอนต์ DAAP ได้"
+
+#~ msgid "Enable DAAP Server support"
+#~ msgstr "เปิดใช้การสนับสนุนเซิร์ฟเวอร์ DAAP"
+
+#~ msgid "Enable the DAAP Music Sharing plugin"
+#~ msgstr "เปิดใช้ปลั๊กอินแบ่งปันเพลงผ่าน DAAP"
+
+#~ msgid "Cannot login to DAAP share"
+#~ msgstr "ไม่สามารถล็อกอินเข้าแหล่งเพลงใช้ร่วมของ DAAP"
+
+#~ msgid "Only download album cover artwork"
+#~ msgstr "ดาวน์โหลดเฉพาะภาพปกอัลบั้ม"
+
+#~ msgid "Download album cover artwork and fill in missing track data"
+#~ msgstr "ดาวน์โหลดภาพปกอัลบั้ม และเติมข้อมูลเพลงที่ว่างอยู่"
+
+#~ msgid "Download album cover artwork and overwrite any existing track data"
+#~ msgstr "ดาวน์โหลดภาพปกอัลบั้ม และเขียนทับข้อมูลเพลงที่มีอยู่"
+
+#~ msgid "Warning"
+#~ msgstr "คำเตือน"
+
+#~ msgid ""
+#~ "This option can usually correct minor mistakes in metadata, however on "
+#~ "rare occasions metadata may be incorrectly updated from MusicBrainz."
+#~ msgstr ""
+#~ "ตัวเลือกนี้จะช่วยแก้ไขข้อผิดพลาดเล็กน้อยในข้อมูลเพลง อย่างไรก็ตามก็มีโอกาสที่ข้อมูลเพลงจาก "
+#~ "MusicBrainz จะผิดพลาด"
+
+#~ msgid ""
+#~ "Automatically search for missing and supplementary metadata and cover art "
+#~ "for songs in your library."
+#~ msgstr "ค้นหาข้อมูลเพลงและภาพปกอัลบั้มของเพลงในไลบรารีจากอินเทอร์เน็ตโดยอัตโนมัติ"
+
+#~ msgid ""
+#~ "0 - Download only cover art 1 - Download cover art, fill in missing "
+#~ "metadata 2 - Download cover art, overwrite metadata"
+#~ msgstr ""
+#~ "0 - ดาวน์โหลดปกอัลบั้มเท่านั้น 1 - ดาวน์โหลดปกอัลบั้ม และเติมข้อมูลเพลงที่ขาด 2 - "
+#~ "ดาวน์โหลดปกอัลบั้ม และเขียนข้อมูลเพลงทับข้อมูลในไลบรารี"
+
+#~ msgid "Enable the MetadataSearch plugin"
+#~ msgstr "เปิดใช้งานปลั๊กอินค้นหาข้อมูลเพลง"
+
+#~ msgid "Method of fetching cover art and supplementary metadata"
+#~ msgstr "วิธีการดึงข้อมูลปกอัลบั้มและข้อมูลเสริมของเพลง"
+
+#~ msgid ""
+#~ "Configuration of multimedia keyboard shortcuts is done through the Gnome "
+#~ "Keyboard Shortcuts configuration applet."
+#~ msgstr "การตั้งค่าชุดปุ่มลัดของแป้นพิมพ์สื่อผสมสามารถทำได้ผ่านการตั้งค่าปุ่มลัดของ GNOME"
+
+#~ msgid "Enable the MultimediaKeys plugin"
+#~ msgstr "เปิดใช้งานปลั๊กอินปุ่มสื่อผสม"
+
+#~ msgid "Enable the Notification Area Icon plugin"
+#~ msgstr "เปิดใช้งานปลั๊กอินไอคอนพื้นที่แจ้งเตือน"
+
+#~ msgid "Searching: {0}"
+#~ msgstr "กำลังค้นหา: {0}"
+
+#~ msgid ""
+#~ "This may be due to a programming error. Please help us make Banshee "
+#~ "better by reporting this error. Thank you in advance!"
+#~ msgstr ""
+#~ "นี่อาจเป็นปัญหาที่ตัวโปรแกรม คุณสามารถรายงานปัญหานี้ เพื่อช่วยปรับปรุง Banshee ให้ดีขึ้น "
+#~ "ขอขอบคุณล่วงหน้า!"
+
+#~ msgid "Log Viewer"
+#~ msgstr "เครื่องมือแสดงบันทึกปฏิบัติการ"
+
+#~ msgid "Time Stamp"
+#~ msgstr "บันทึกเวลา"
+
+#~ msgid "Message"
+#~ msgstr "ข้อความ"
+
+#~ msgid "Only Error Messages"
+#~ msgstr "เฉพาะข้อความแจ้งข้อผิดพลาด"
+
+#~ msgid "Only Warning Messages"
+#~ msgstr "เฉพาะข้อความเตือน"
+
+#~ msgid "Only Information Messages"
+#~ msgstr "เฉพาะข้อความแจ้งเพื่อทราบ"
+
+#~ msgid "Only Debug Messages"
+#~ msgstr "เฉพาะข้อความดีบั๊ก"
+
+#~ msgid "Write selection to CD"
+#~ msgstr "เขียนเพลงที่เลือกลงซีดี"
+
+#~ msgid "Import CD into library"
+#~ msgstr "นำเข้าซีดีไปยังไลบรารี"
+
+#~ msgid "Play previous song"
+#~ msgstr "เล่นเพลงก่อนหน้า"
+
+#~ msgid "Play/pause current song"
+#~ msgstr "เล่น/พักเพลงปัจจุบัน"
+
+#~ msgid "Device disk usage"
+#~ msgstr "เนื้อที่ดิสก์ที่ใช้"
+
+#~ msgid "Synchronize music library to device"
+#~ msgstr "ปรับข้อมูลในไลบรารีเพลงให้ตรงกับอุปกรณ์"
+
+#~ msgid "Adjust volume"
+#~ msgstr "ปรับความดังเสียง"
+
+#~ msgid "Edit and view metadata of selected songs"
+#~ msgstr "แก้ไขและดูข้อมูลเพลงที่เลือก"
+
+#~ msgid ""
+#~ "{0} cannot be played by Banshee. The most common reasons for this are:\n"
+#~ "\n"
+#~ "  <big>•</big> Song is protected (DRM)\n"
+#~ "  <big>•</big> Song is on a DAP that does not support playback\n"
+#~ msgstr ""
+#~ "{0} ไม่สามารถเล่นโดย Banshee ได้ สาเหตุที่พบบ่อยก็คือ:\n"
+#~ "\n"
+#~ "  <big>•</big> เพลงมีการปกป้องสิทธิ์ (DRM)\n"
+#~ "  <big>•</big> เพลงอยู่ในเครื่องเล่นเพลงดิจิทัลที่ไม่สนับสนุนการเล่นเพลง\n"
+
+#~ msgid "Cannot Import: {0} ({1})"
+#~ msgstr "ไม่สามารถนำเข้า: {0} ({1})"
+
+#~ msgid ""
+#~ "You have made changes to your {0}. Please choose a method for updating "
+#~ "the contents of your {0}.\n"
+#~ "\n"
+#~ "<big>•</big> <i>Synchronize Library</i>: synchronize Banshee library to "
+#~ "{0}\n"
+#~ "<big>•</big> <i>Save Manual Changes</i>: save only the manual changes you "
+#~ "made"
+#~ msgstr ""
+#~ "คุณได้เปลี่ยนแปลงแก้ไข {0}. กรุณาเลือกวิธีการที่จะปรับข้อมูลใน {0} ของคุณ\n"
+#~ "\n"
+#~ "<big>•</big> <i>ปรับให้ตรงกับไลบรารี</i>: ปรับข้อมูลไลบรารี Banshee ไปยัง {0}\n"
+#~ "<big>•</big> <i>บันทึกการแก้ไขที่สั่งเอง</i>: บันทึกเฉพาะการแก้ไขที่คุณสั่งเอง"
+
+#~ msgid ""
+#~ "<b>Warning:</b> Actions will alter or erase existing iPod contents and "
+#~ "may cause incompatability with iTunes!"
+#~ msgstr ""
+#~ "<b>คำเตือน:</b> ปฏิบัติการต่างๆ จะเปลี่ยนแปลงหรือลบข้อมูลที่อยู่ในไอพอด "
+#~ "และอาจทำให้ข้อมูลใช้กับ iTunes ไม่ได้!"
+
+#~ msgid "Save Manual Changes"
+#~ msgstr "บันทึกการแก้ไขที่สั่งเอง"
+
+#~ msgid "Invalid column width"
+#~ msgstr "ความกว้างคอลัมน์ที่ใช้ไม่ได้"
+
+#~ msgid "Visible Playlist Columns"
+#~ msgstr "คอลัมน์ที่แสดงในรายการเล่น"
+
+#~ msgid "N/A"
+#~ msgstr "ไม่มีข้อมูล"
+
+#~ msgid "Set all Track Numbers to this value"
+#~ msgstr "ตั้งลำดับเพลงทั้งหมดเป็นค่านี้"
+
+#~ msgid "File: {0}"
+#~ msgstr "แฟ้ม: {0}"
 
 #~ msgid "An Error Occurred"
 #~ msgstr "เกิดข้อผิดพลาด"
@@ -2437,15 +8335,9 @@ msgstr "รุ่น"
 #~ msgid "File Transcoder"
 #~ msgstr "ตัวแปลงรหัสแฟ้ม"
 
-#~ msgid ": Initializing"
-#~ msgstr ": กำลังตั้งต้นใช้งาน"
-
 #~ msgid ": Ready"
 #~ msgstr ": พร้อม"
 
-#~ msgid "Cancel Operation"
-#~ msgstr "ยกเลิกปฏิบัติการ"
-
 #~ msgid ""
 #~ "Are you sure you want to remove the selected song from your library "
 #~ "<i><b>and</b></i> your drive? This action will permanently delete the "
@@ -2467,9 +8359,6 @@ msgstr "รุ่น"
 #~ msgid "Unkown"
 #~ msgstr "ไม่มีข้อมูล"
 
-#~ msgid "Creation Order"
-#~ msgstr "ลำดับการสร้าง"
-
 #~ msgid "Processing Songs..."
 #~ msgstr "กำลังประมวลผลเพลงต่างๆ ..."
 
@@ -2493,42 +8382,12 @@ msgstr "รุ่น"
 #~ "Please take a moment to give your iPod a name."
 #~ msgstr "Banshee ตรวจพบว่าคุณเสียบไอพอดเป็นครั้งแรก กรุณาใส่ชื่อไอพอดของคุณ"
 
-#~ msgid "Description:"
-#~ msgstr "คำอธิบาย:"
-
-#~ msgid "Disk Drive:"
-#~ msgstr "ไดรว์:"
-
-#~ msgid "Eject when finished"
-#~ msgstr "ดันแผ่นออกเมื่อเขียนเสร็จ"
-
-#~ msgid "New iPod Detected"
-#~ msgstr "ตรวจพบไอพอดใหม่"
-
 #~ msgid "Simulate write"
 #~ msgstr "จำลองการเขียน"
 
-#~ msgid "Your Name:"
-#~ msgstr "ชื่อของคุณ:"
-
-#~ msgid "iPod Name:"
-#~ msgstr "ชื่อไอพ็อด:"
-
-#~ msgid "Writing Audio CD"
-#~ msgstr "กำลังเขียนซีดีเพลง"
-
-#~ msgid "Error Burning CD"
-#~ msgstr "เกิดความผิดพลาดในการเขียนซีดี"
-
 #~ msgid "Current position in song"
 #~ msgstr "ตำแหน่งของเพลงที่กำลังเล่นอยู่"
 
-#~ msgid "Automatic Import"
-#~ msgstr "นำเข้าอัตโนมัติ"
-
-#~ msgid "Rename Playlist"
-#~ msgstr "เปลี่ยนชื่อรายการเล่น"
-
 #~ msgid "Your Library is Empty - Consider Importing Music"
 #~ msgstr "ไลบรารีไม่มีเพลงอยู่ กรุณานำเข้าเพลง"
 
@@ -2541,9 +8400,6 @@ msgstr "รุ่น"
 #~ msgid "Enter new name for your device"
 #~ msgstr "ใส่ชื่อให้อุปกรณ์ของคุณ"
 
-#~ msgid "Unavailable"
-#~ msgstr "ไม่ปรากฏ"
-
 #~ msgid "Loading Drive List..."
 #~ msgstr "กำลังเรียกรายการไดรว์..."
 
@@ -2553,15 +8409,9 @@ msgstr "รุ่น"
 #~ msgid "Fastest Possible"
 #~ msgstr "เร็วที่สุดที่เป็นไปได้"
 
-#~ msgid "Rename Source"
-#~ msgstr "เปลี่ยนชื่อแหล่งที่มา"
-
 #~ msgid "Rename the active source"
 #~ msgstr "เปลี่ยนชื่อแหล่งที่มาที่ใช้อยู่"
 
-#~ msgid "Could not encode file: {0}"
-#~ msgstr "ไม่สามารถลงรหัสแฟ้ม: {0}"
-
 #~ msgid "VLC"
 #~ msgstr "VLC"
 
diff --git a/src/AssemblyInfo.cs b/src/AssemblyInfo.cs
index 7cdfad2..1595222 100644
--- a/src/AssemblyInfo.cs
+++ b/src/AssemblyInfo.cs
@@ -3,7 +3,7 @@ using System.Reflection;
 using System.Runtime.CompilerServices;
 
 [assembly: ApplicationVersion ("1.9.0", "1.9.0")]
-[assembly: ApplicationBuildInformation ("git-checkout", "linux-gnu", "x86_64", "2010-11-10 13:41:01 CST")]
+[assembly: ApplicationBuildInformation ("git-checkout", "linux-gnu", "x86_64", "2010-11-21 12:02:22 SGT")]
 
 [assembly: AssemblyVersion ("1.9.0.0")]
 [assembly: AssemblyTitle ("Banshee")]
diff --git a/src/Backends/Banshee.GStreamer/Makefile.in b/src/Backends/Banshee.GStreamer/Makefile.in
index 4f0494a..066b3a6 100644
--- a/src/Backends/Banshee.GStreamer/Makefile.in
+++ b/src/Backends/Banshee.GStreamer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -427,12 +435,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -484,7 +488,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -613,14 +617,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.GStreamer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.GStreamer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.GStreamer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.GStreamer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -638,25 +642,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -686,13 +706,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -724,6 +748,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -744,6 +769,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -751,21 +778,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -787,7 +823,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -852,6 +887,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.GStreamerSharp/Makefile.in b/src/Backends/Banshee.GStreamerSharp/Makefile.in
index 9907364..4f04e39 100644
--- a/src/Backends/Banshee.GStreamerSharp/Makefile.in
+++ b/src/Backends/Banshee.GStreamerSharp/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -421,12 +429,8 @@ RESOURCES = Banshee.GStreamerSharp.addin.xml
 @ENABLE_GST_SHARP_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_GST_SHARP_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_GST_SHARP_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_GST_SHARP_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_GST_SHARP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_GST_SHARP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_GST_SHARP_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_GST_SHARP_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -478,7 +482,7 @@ RESOURCES = Banshee.GStreamerSharp.addin.xml
 
 @ENABLE_GST_SHARP_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_GST_SHARP_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_GST_SHARP_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_GST_SHARP_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_GST_SHARP_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_GST_SHARP_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_GST_SHARP_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.GStreamerSharp/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.GStreamerSharp/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.GStreamerSharp/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.GStreamerSharp/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -849,6 +884,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_GST_SHARP_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_GST_SHARP_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_GST_SHARP_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.Gio/Makefile.in b/src/Backends/Banshee.Gio/Makefile.in
index f6ab6db..f608cac 100644
--- a/src/Backends/Banshee.Gio/Makefile.in
+++ b/src/Backends/Banshee.Gio/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,8 +83,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -203,29 +226,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -260,6 +264,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -301,9 +306,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -447,12 +455,8 @@ EXTRA_BUNDLE = $(GIOSHARP_ASSEMBLIES)
 @ENABLE_GIO_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_GIO_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_GIO_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_GIO_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_GIO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_GIO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_GIO_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_GIO_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -504,7 +508,7 @@ EXTRA_BUNDLE = $(GIOSHARP_ASSEMBLIES)
 
 @ENABLE_GIO_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_GIO_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_GIO_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_GIO_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_GIO_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_GIO_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_GIO_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -632,14 +636,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.Gio/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.Gio/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.Gio/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.Gio/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -657,25 +661,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -705,13 +725,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -743,6 +767,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -765,6 +790,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -772,21 +799,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -808,7 +844,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -885,6 +920,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_GIO_TRUE@		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
 @ENABLE_GIO_TRUE@	done;
 @ENABLE_GIO_TRUE at endef
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GConfConfigurationClient.cs b/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GConfConfigurationClient.cs
index 69635b3..9372b6f 100644
--- a/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GConfConfigurationClient.cs
+++ b/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GConfConfigurationClient.cs
@@ -102,25 +102,11 @@ namespace Banshee.GnomeBackend
             }
         }
 
-        public T Get<T> (SchemaEntry<T> entry)
-        {
-            return Get<T> (entry.Namespace, entry.Key, entry.DefaultValue);
-        }
-
-        public T Get<T> (SchemaEntry<T> entry, T fallback)
-        {
-            return Get<T> (entry.Namespace, entry.Key, fallback);
-        }
-
-        public T Get<T> (string key, T fallback)
-        {
-            return Get<T> (null, key, fallback);
-        }
-
-        public T Get<T> (string @namespace, string key, T fallback)
+        public bool TryGet<T> (string @namespace, string key, out T result)
         {
             if (DisableGConf || key == null) {
-                return fallback;
+                result = default (T);
+                return false;
             }
 
             if (client == null) {
@@ -128,23 +114,15 @@ namespace Banshee.GnomeBackend
             }
 
             try {
-                return (T)client.Get (CreateKey (@namespace, key));
+                result = (T)client.Get (CreateKey (@namespace, key));
+                return true;
             } catch (GConf.NoSuchKeyException) {
-                return fallback;
             } catch (Exception e) {
                 Log.Exception (String.Format ("Could no read GConf key {0}.{1}", @namespace, key), e);
-                return fallback;
             }
-        }
 
-        public void Set<T> (SchemaEntry<T> entry, T value)
-        {
-            Set<T> (entry.Namespace, entry.Key, value);
-        }
-
-        public void Set<T> (string key, T value)
-        {
-            Set<T> (null, key, value);
+            result = default (T);
+            return false;
         }
 
         public void Set<T> (string @namespace, string key, T value)
diff --git a/src/Backends/Banshee.Gnome/Makefile.in b/src/Backends/Banshee.Gnome/Makefile.in
index cbd7ac3..04e5d0a 100644
--- a/src/Backends/Banshee.Gnome/Makefile.in
+++ b/src/Backends/Banshee.Gnome/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -429,12 +437,8 @@ RESOURCES = \
 @ENABLE_GNOME_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_GNOME_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_GNOME_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_GNOME_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_GNOME_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_GNOME_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_GNOME_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_GNOME_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -486,7 +490,7 @@ RESOURCES = \
 
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_GNOME_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_GNOME_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_GNOME_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -614,14 +618,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.Gnome/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.Gnome/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.Gnome/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.Gnome/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -639,25 +643,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -687,13 +707,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -725,6 +749,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -747,6 +772,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -754,21 +781,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -790,7 +826,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -855,6 +890,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_GNOME_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_GNOME_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_GNOME_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.Hal/Makefile.in b/src/Backends/Banshee.Hal/Makefile.in
index 53fad2f..fa2a353 100644
--- a/src/Backends/Banshee.Hal/Makefile.in
+++ b/src/Backends/Banshee.Hal/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -433,12 +441,8 @@ RESOURCES = Banshee.Hal.addin.xml
 @ENABLE_HAL_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_HAL_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_HAL_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_HAL_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_HAL_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_HAL_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_HAL_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_HAL_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -490,7 +494,7 @@ RESOURCES = Banshee.Hal.addin.xml
 
 @ENABLE_HAL_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_HAL_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_HAL_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_HAL_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_HAL_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_HAL_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_HAL_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -618,14 +622,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.Hal/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.Hal/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.Hal/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.Hal/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -643,25 +647,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -691,13 +711,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -729,6 +753,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -751,6 +776,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -758,21 +785,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -794,7 +830,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -859,6 +894,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_HAL_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_HAL_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_HAL_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.NowPlaying.X11/Makefile.in b/src/Backends/Banshee.NowPlaying.X11/Makefile.in
index 13c9fd5..29d2f57 100644
--- a/src/Backends/Banshee.NowPlaying.X11/Makefile.in
+++ b/src/Backends/Banshee.NowPlaying.X11/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -93,10 +116,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -214,29 +265,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -271,6 +303,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -312,9 +345,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -432,12 +468,8 @@ RESOURCES = Banshee.NowPlaying.X11.addin.xml
 @HAVE_XVIDMODE_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_XVIDMODE_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_XVIDMODE_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_XVIDMODE_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_XVIDMODE_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_XVIDMODE_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_XVIDMODE_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_XVIDMODE_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -489,7 +521,7 @@ RESOURCES = Banshee.NowPlaying.X11.addin.xml
 
 @HAVE_XVIDMODE_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_XVIDMODE_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_XVIDMODE_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_XVIDMODE_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_XVIDMODE_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_XVIDMODE_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_XVIDMODE_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -618,14 +650,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.NowPlaying.X11/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.NowPlaying.X11/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.NowPlaying.X11/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.NowPlaying.X11/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -643,25 +675,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -676,7 +724,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -693,7 +741,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -701,7 +749,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -727,16 +775,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -744,14 +792,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -763,7 +811,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -772,29 +820,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -815,29 +868,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -871,6 +939,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -893,6 +962,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -900,21 +971,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -936,9 +1016,9 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-data-am install-strip uninstall-am
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-data-am install-strip tags-recursive \
+	uninstall-am
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -1004,6 +1084,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_XVIDMODE_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_XVIDMODE_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_XVIDMODE_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile.in b/src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile.in
index 77af60e..02d1125 100644
--- a/src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile.in
+++ b/src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -17,8 +18,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -78,14 +80,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(bnpx11dir)"
-bnpx11LTLIBRARIES_INSTALL = $(INSTALL)
 LTLIBRARIES = $(bnpx11_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 @HAVE_XVIDMODE_TRUE at libbnpx11_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
@@ -101,6 +118,7 @@ libbnpx11_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
+am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
@@ -233,29 +251,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -290,6 +289,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -331,9 +331,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -430,14 +433,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -455,23 +458,28 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-bnpx11LTLIBRARIES: $(bnpx11_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
 	test -z "$(bnpx11dir)" || $(MKDIR_P) "$(DESTDIR)$(bnpx11dir)"
-	@list='$(bnpx11_LTLIBRARIES)'; for p in $$list; do \
+	@list='$(bnpx11_LTLIBRARIES)'; test -n "$(bnpx11dir)" || list=; \
+	list2=; for p in $$list; do \
 	  if test -f $$p; then \
-	    f=$(am__strip_dir) \
-	    echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(bnpx11LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(bnpx11dir)/$$f'"; \
-	    $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(bnpx11LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(bnpx11dir)/$$f"; \
+	    list2="$$list2 $$p"; \
 	  else :; fi; \
-	done
+	done; \
+	test -z "$$list2" || { \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(bnpx11dir)'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(bnpx11dir)"; \
+	}
 
 uninstall-bnpx11LTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(bnpx11_LTLIBRARIES)'; for p in $$list; do \
-	  p=$(am__strip_dir) \
-	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(bnpx11dir)/$$p'"; \
-	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(bnpx11dir)/$$p"; \
+	@list='$(bnpx11_LTLIBRARIES)'; test -n "$(bnpx11dir)" || list=; \
+	for p in $$list; do \
+	  $(am__strip_dir) \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(bnpx11dir)/$$f'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(bnpx11dir)/$$f"; \
 	done
 
 clean-bnpx11LTLIBRARIES:
@@ -495,31 +503,31 @@ distclean-compile:
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
 libbnpx11_la-bacon-resize.lo: bacon-resize.c
- at am__fastdepCC_TRUE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libbnpx11_la_CFLAGS) $(CFLAGS) -MT libbnpx11_la-bacon-resize.lo -MD -MP -MF $(DEPDIR)/libbnpx11_la-bacon-resize.Tpo -c -o libbnpx11_la-bacon-resize.lo `test -f 'bacon-resize.c' || echo '$(srcdir)/'`bacon-resize.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libbnpx11_la-bacon-resize.Tpo $(DEPDIR)/libbnpx11_la-bacon-resize.Plo
+ at am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libbnpx11_la_CFLAGS) $(CFLAGS) -MT libbnpx11_la-bacon-resize.lo -MD -MP -MF $(DEPDIR)/libbnpx11_la-bacon-resize.Tpo -c -o libbnpx11_la-bacon-resize.lo `test -f 'bacon-resize.c' || echo '$(srcdir)/'`bacon-resize.c
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/libbnpx11_la-bacon-resize.Tpo $(DEPDIR)/libbnpx11_la-bacon-resize.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='bacon-resize.c' object='libbnpx11_la-bacon-resize.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libbnpx11_la_CFLAGS) $(CFLAGS) -c -o libbnpx11_la-bacon-resize.lo `test -f 'bacon-resize.c' || echo '$(srcdir)/'`bacon-resize.c
+ at am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libbnpx11_la_CFLAGS) $(CFLAGS) -c -o libbnpx11_la-bacon-resize.lo `test -f 'bacon-resize.c' || echo '$(srcdir)/'`bacon-resize.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -532,14 +540,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -547,29 +555,34 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -590,13 +603,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -628,6 +645,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -650,6 +668,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -658,18 +678,28 @@ install-data-am: install-bnpx11LTLIBRARIES
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -715,6 +745,7 @@ uninstall-am: uninstall-bnpx11LTLIBRARIES
 @HAVE_XVIDMODE_TRUE@$(top_builddir)/bin/libbnpx11.so: libbnpx11.la
 @HAVE_XVIDMODE_TRUE@	mkdir -p $(top_builddir)/bin
 @HAVE_XVIDMODE_TRUE@	cp -f .libs/libbnpx11.so $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.Osx/Makefile.in b/src/Backends/Banshee.Osx/Makefile.in
index f084be6..66d63a1 100644
--- a/src/Backends/Banshee.Osx/Makefile.in
+++ b/src/Backends/Banshee.Osx/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -431,12 +439,8 @@ RESOURCES = Banshee.Osx.addin.xml
 @PLATFORM_DARWIN_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @PLATFORM_DARWIN_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at PLATFORM_DARWIN_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at PLATFORM_DARWIN_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at PLATFORM_DARWIN_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at PLATFORM_DARWIN_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @PLATFORM_DARWIN_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @PLATFORM_DARWIN_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -488,7 +492,7 @@ RESOURCES = Banshee.Osx.addin.xml
 
 @PLATFORM_DARWIN_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @PLATFORM_DARWIN_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at PLATFORM_DARWIN_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at PLATFORM_DARWIN_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @PLATFORM_DARWIN_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @PLATFORM_DARWIN_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @PLATFORM_DARWIN_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -618,14 +622,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.Osx/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.Osx/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.Osx/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.Osx/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -643,25 +647,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -691,13 +711,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -729,6 +753,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -751,6 +776,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -758,21 +785,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -794,7 +830,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -859,6 +894,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @PLATFORM_DARWIN_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @PLATFORM_DARWIN_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @PLATFORM_DARWIN_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Banshee.Unix/Makefile.in b/src/Backends/Banshee.Unix/Makefile.in
index 9126746..3c867ce 100644
--- a/src/Backends/Banshee.Unix/Makefile.in
+++ b/src/Backends/Banshee.Unix/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Banshee.Unix/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Banshee.Unix/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Banshee.Unix/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Banshee.Unix/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -740,6 +765,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -747,21 +774,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -783,7 +819,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -848,6 +883,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Backends/Makefile.in b/src/Backends/Makefile.in
index 85c3077..6b7983a 100644
--- a/src/Backends/Makefile.in
+++ b/src/Backends/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -403,14 +419,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Backends/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Backends/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Backends/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Backends/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -428,6 +444,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -442,7 +459,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -459,7 +476,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -467,7 +484,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -493,16 +510,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -510,14 +527,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -529,7 +546,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -538,29 +555,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -581,29 +603,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -633,6 +670,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -652,6 +690,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -660,18 +700,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -692,8 +742,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -709,6 +759,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Beroe/Makefile.in b/src/Clients/Beroe/Makefile.in
index 992ccd7..9afe77c 100644
--- a/src/Clients/Beroe/Makefile.in
+++ b/src/Clients/Beroe/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -417,12 +425,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -474,7 +478,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -601,14 +605,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Beroe/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Beroe/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Beroe/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Beroe/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -626,25 +630,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -674,13 +694,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -712,6 +736,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -732,6 +757,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -739,21 +766,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -775,7 +811,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -840,6 +875,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Booter/Makefile.in b/src/Clients/Booter/Makefile.in
index 65d6735..49ddc29 100644
--- a/src/Clients/Booter/Makefile.in
+++ b/src/Clients/Booter/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,9 +83,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = banshee-1.linux banshee-1.darwin
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(moduledir)"
-binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(bin_SCRIPTS) $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -204,29 +226,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -261,6 +264,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -302,9 +306,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -419,12 +426,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -476,7 +479,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -605,14 +608,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Booter/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Booter/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Booter/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Booter/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -630,6 +633,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 banshee-1.linux: $(top_builddir)/config.status $(srcdir)/banshee-1.linux.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 banshee-1.darwin: $(top_builddir)/config.status $(srcdir)/banshee-1.darwin.in
@@ -637,41 +641,71 @@ banshee-1.darwin: $(top_builddir)/config.status $(srcdir)/banshee-1.darwin.in
 install-binSCRIPTS: $(bin_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
-	@list='$(bin_SCRIPTS)'; for p in $$list; do \
+	@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
-	    $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-binSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(bin_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(bindir)/$$f"; \
-	done
+	@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bindir)" && rm -f $$files
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -701,13 +735,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -739,6 +777,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -759,6 +798,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -766,23 +807,31 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am: install-binSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -804,7 +853,6 @@ ps-am:
 uninstall-am: uninstall-binSCRIPTS uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-exec-am install-strip \
 	uninstall-am
 
@@ -878,6 +926,7 @@ uninstall-hook: $(THEME_ICONS_SOURCE)
 
 install-exec-hook:
 	$(LN_S) -f banshee-1 $(DESTDIR)$(bindir)/muinshee
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Halie/Makefile.in b/src/Clients/Halie/Makefile.in
index 4575bc0..4cb7542 100644
--- a/src/Clients/Halie/Makefile.in
+++ b/src/Clients/Halie/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -417,12 +425,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -474,7 +478,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -601,14 +605,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Halie/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Halie/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Halie/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Halie/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -626,25 +630,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -674,13 +694,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -712,6 +736,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -732,6 +757,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -739,21 +766,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -775,7 +811,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -840,6 +875,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Makefile.in b/src/Clients/Makefile.in
index 17f0734..55333a1 100644
--- a/src/Clients/Makefile.in
+++ b/src/Clients/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -401,14 +417,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -426,6 +442,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -440,7 +457,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -457,7 +474,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -465,7 +482,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -491,16 +508,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -508,14 +525,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -527,7 +544,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -536,29 +553,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -579,29 +601,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -631,6 +668,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -650,6 +688,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -658,18 +698,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -690,8 +740,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -707,6 +757,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/MeeGo/Makefile.in b/src/Clients/MeeGo/Makefile.in
index 0b89310..d395b5f 100644
--- a/src/Clients/MeeGo/Makefile.in
+++ b/src/Clients/MeeGo/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -417,12 +425,8 @@ SOURCES = Banshee.MeeGo.Client/MeeGoClient.cs
 @HAVE_MEEGO_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_MEEGO_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_MEEGO_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_MEEGO_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_MEEGO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_MEEGO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_MEEGO_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_MEEGO_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -474,7 +478,7 @@ SOURCES = Banshee.MeeGo.Client/MeeGoClient.cs
 
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_MEEGO_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_MEEGO_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_MEEGO_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -602,14 +606,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/MeeGo/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/MeeGo/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/MeeGo/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/MeeGo/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -627,25 +631,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -675,13 +695,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -713,6 +737,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -735,6 +760,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -742,21 +769,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -778,7 +814,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -843,6 +878,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_MEEGO_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_MEEGO_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_MEEGO_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Muinshee/Makefile.in b/src/Clients/Muinshee/Makefile.in
index 8a68b08..bcba876 100644
--- a/src/Clients/Muinshee/Makefile.in
+++ b/src/Clients/Muinshee/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -428,12 +436,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -485,7 +489,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -612,14 +616,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Muinshee/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Muinshee/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Muinshee/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Muinshee/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -637,25 +641,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -685,13 +705,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -723,6 +747,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -743,6 +768,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -750,21 +777,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -786,7 +822,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -851,6 +886,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Nereid/Makefile.in b/src/Clients/Nereid/Makefile.in
index 9f5129f..c5dd550 100644
--- a/src/Clients/Nereid/Makefile.in
+++ b/src/Clients/Nereid/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -421,12 +429,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -478,7 +482,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -605,14 +609,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Clients/Nereid/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Clients/Nereid/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Clients/Nereid/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Clients/Nereid/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -630,25 +634,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -678,13 +698,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -716,6 +740,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -736,6 +761,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -743,21 +770,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -779,7 +815,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -844,6 +879,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Clients/Nereid/Nereid/PlayerInterface.cs b/src/Clients/Nereid/Nereid/PlayerInterface.cs
index 6978dde..9669fdd 100644
--- a/src/Clients/Nereid/Nereid/PlayerInterface.cs
+++ b/src/Clients/Nereid/Nereid/PlayerInterface.cs
@@ -98,10 +98,10 @@ namespace Nereid
 
         private void SetSimple (bool simple)
         {
-            main_menu.Visible =
-            source_box.Visible =
-            footer_toolbar.Visible =
-            track_info_container.Visible = !simple;
+            var widgets = new Widget [] { main_menu, source_box, footer_toolbar, track_info_container };
+            foreach (var w in widgets.Where (w => w != null)) {
+                w.Visible = !simple;
+            }
         }
 
         public PlayerInterface () : base (Catalog.GetString ("Banshee Media Player"), "player_window", 1024, 700)
@@ -138,7 +138,6 @@ namespace Nereid
 
             ActionService.SourceActions.SourceView = this;
             composite_view.TrackView.HasFocus = true;
-            OnActiveSourceChanged (null);
 
             Log.DebugTimerPrint (timer, "Constructed Nereid interface: {0}");
 
@@ -177,6 +176,7 @@ namespace Nereid
             search_entry_align.Child = box;
 
             ActionService.PopulateToolbarPlaceholder (header_toolbar, "/HeaderToolbar/SearchEntry", search_entry_align);
+            search_entry_align.Visible = view_container.SearchSensitive = true;
             search_entry_align.ShowAll ();
 
             primary_vbox.Show ();
@@ -285,9 +285,15 @@ namespace Nereid
                 Gdk.Colormap.System.AllocColor (ref color, true, true);
                 source_view.ModifyBase (StateType.Normal, color);
             } else {
-                var hyena_source_scroll = new Hyena.Widgets.ScrolledWindow ();
-                hyena_source_scroll.AddWithFrame (source_view);
-                source_scroll = hyena_source_scroll;
+                Hyena.Widgets.ScrolledWindow window;
+                if (ApplicationContext.CommandLine.Contains ("smooth-scroll")) {
+                    window = new Hyena.Widgets.SmoothScrolledWindow ();
+                } else {
+                    window = new Hyena.Widgets.ScrolledWindow ();
+                }
+
+                window.AddWithFrame (source_view);
+                source_scroll = window;
             }
 
             composite_view.TrackView.HeaderVisible = false;
diff --git a/src/Clients/Nereid/Nereid/ViewContainer.cs b/src/Clients/Nereid/Nereid/ViewContainer.cs
index c7da08a..29df9bf 100644
--- a/src/Clients/Nereid/Nereid/ViewContainer.cs
+++ b/src/Clients/Nereid/Nereid/ViewContainer.cs
@@ -260,8 +260,10 @@ namespace Nereid
         public bool SearchSensitive {
             get { return search_entry.Sensitive; }
             set {
-                search_entry.Sensitive = value;
-                search_entry.Visible = value;
+                if (search_entry.Visible != value) {
+                    search_entry.Sensitive = value;
+                    search_entry.Visible = value;
+                }
             }
         }
     }
diff --git a/src/Core/Banshee.CollectionIndexer/Makefile.in b/src/Core/Banshee.CollectionIndexer/Makefile.in
index 7691516..7c43c98 100644
--- a/src/Core/Banshee.CollectionIndexer/Makefile.in
+++ b/src/Core/Banshee.CollectionIndexer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -426,12 +434,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -483,7 +487,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -610,14 +614,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.CollectionIndexer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.CollectionIndexer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.CollectionIndexer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.CollectionIndexer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -635,25 +639,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -683,13 +703,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -721,6 +745,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -852,6 +887,7 @@ uninstall-hook: $(THEME_ICONS_SOURCE)
 
 #ASSEMBLY_FILE_TMP=$(ASSEMBLY_FILE)
 #ASSEMBLY_FILE=$(strip $(patsubst .exe, .dll, $(ASSEMBLY_FILE_TMP)))
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.Core/Banshee.Configuration/ConfigurationClient.cs b/src/Core/Banshee.Core/Banshee.Configuration/ConfigurationClient.cs
index e8134dc..7534c04 100644
--- a/src/Core/Banshee.Core/Banshee.Configuration/ConfigurationClient.cs
+++ b/src/Core/Banshee.Core/Banshee.Configuration/ConfigurationClient.cs
@@ -78,34 +78,40 @@ namespace Banshee.Configuration
             }
         }
 
-        public static T Get<T> (SchemaEntry<T> entry)
+        public static T Get<T>(SchemaEntry<T> entry)
         {
-            return Client.Get<T> (entry);
+            return Get<T>(entry.Namespace, entry.Key, entry.DefaultValue);
         }
 
-        public static T Get<T> (SchemaEntry<T> entry, T fallback)
+        public static T Get<T>(SchemaEntry<T> entry, T fallback)
         {
-            return Client.Get<T> (entry, fallback);
+            return Get<T>(entry.Namespace, entry.Key, fallback);
         }
 
-        public static T Get<T> (string key, T fallback)
+        public static T Get<T>(string key, T fallback)
         {
-            return Client.Get<T> (key, fallback);
+            return Get<T>(null, key, fallback);
         }
 
-        public static T Get<T> (string @namespace, string key, T fallback)
+        public static T Get<T>(string namespce, string key, T fallback)
         {
-            return Client.Get<T> (@namespace, key, fallback);
+            T result;
+            return TryGet<T> (namespce, key, out result) ? result : fallback;
+        }
+
+        public static bool TryGet<T> (string @namespace, string key, out T result)
+        {
+            return Client.TryGet<T> (@namespace, key, out result);
         }
 
         public static void Set<T> (SchemaEntry<T> entry, T value)
         {
-            Client.Set<T> (entry, value);
+            Set (entry.Namespace, entry.Key, value);
         }
 
         public static void Set<T> (string key, T value)
         {
-            Client.Set<T> (key, value);
+            Set (null, key, value);
         }
 
         public static void Set<T> (string @namespace, string key, T value)
diff --git a/src/Core/Banshee.Core/Banshee.Configuration/IConfigurationClient.cs b/src/Core/Banshee.Core/Banshee.Configuration/IConfigurationClient.cs
index 10064ba..d7831c3 100644
--- a/src/Core/Banshee.Core/Banshee.Configuration/IConfigurationClient.cs
+++ b/src/Core/Banshee.Core/Banshee.Configuration/IConfigurationClient.cs
@@ -30,13 +30,41 @@ namespace Banshee.Configuration
 {
     public interface IConfigurationClient
     {
-        T Get<T> (SchemaEntry<T> entry);
-        T Get<T> (SchemaEntry<T> entry, T fallback);
-        T Get<T> (string key, T fallback);
-        T Get<T> (string @namespace, string key, T fallback);
-
-        void Set<T> (SchemaEntry<T> entry, T value);
-        void Set<T> (string key, T value);
+        bool TryGet<T> (string @namespace, string key, out T result);
         void Set<T> (string @namespace, string key, T value);
     }
+
+    public static class Extensions
+    {
+        public static T Get<T> (this IConfigurationClient client, SchemaEntry<T> entry)
+        {
+            return client.Get<T> (entry.Namespace, entry.Key, entry.DefaultValue);
+        }
+
+        public static T Get<T> (this IConfigurationClient client, SchemaEntry<T> entry, T fallback)
+        {
+            return client.Get<T> (entry.Namespace, entry.Key, fallback);
+        }
+
+        public static T Get<T> (this IConfigurationClient client, string key, T fallback)
+        {
+            return client.Get<T> (null, key, fallback);
+        }
+
+        public static T Get<T> (this IConfigurationClient client, string namespce, string key, T fallback)
+        {
+            T result;
+            return client.TryGet<T> (namespce, key, out result) ? result : fallback;
+        }
+
+        public static void Set<T> (this IConfigurationClient client, SchemaEntry<T> entry, T value)
+        {
+            client.Set (entry.Namespace, entry.Key, value);
+        }
+
+        public static void Set<T> (this IConfigurationClient client, string key, T value)
+        {
+            client.Set (null, key, value);
+        }
+    }
 }
diff --git a/src/Core/Banshee.Core/Banshee.Configuration/MemoryConfigurationClient.cs b/src/Core/Banshee.Core/Banshee.Configuration/MemoryConfigurationClient.cs
index 8f62aad..a4a7fc9 100644
--- a/src/Core/Banshee.Core/Banshee.Configuration/MemoryConfigurationClient.cs
+++ b/src/Core/Banshee.Core/Banshee.Configuration/MemoryConfigurationClient.cs
@@ -35,38 +35,9 @@ namespace Banshee.Configuration
     {
         private Dictionary<string, object> config = new Dictionary<string, object> ();
 
-#region Helper Overrides
-
-        public T Get<T> (SchemaEntry<T> entry)
-        {
-            return Get (entry.Namespace, entry.Key, entry.DefaultValue);
-        }
-
-        public T Get<T> (SchemaEntry<T> entry, T fallback)
-        {
-            return Get (entry.Namespace, entry.Key, fallback);
-        }
-
-        public T Get<T> (string key, T fallback)
-        {
-            return Get (null, key, fallback);
-        }
-
-        public void Set<T> (SchemaEntry<T> entry, T value)
-        {
-            Set (entry.Namespace, entry.Key, value);
-        }
-
-        public void Set<T> (string key, T value)
-        {
-            Set (null, key, value);
-        }
-
-#endregion
-
 #region Implementation
 
-        public T Get<T> (string namespce, string key, T fallback)
+        public bool TryGet<T> (string namespce, string key, out T result)
         {
             lock (this) {
                 string fq_key = MakeKey (namespce, key);
@@ -74,13 +45,16 @@ namespace Banshee.Configuration
 
                 if (config.TryGetValue (fq_key, out value)) {
                     if (value == null) {
-                        return default (T);
+                        result = default (T);
+                        return true;
                     } else if (value.GetType () == typeof (T)) {
-                        return (T)value;
+                        result = (T)value;
+                        return true;
                     }
                 }
 
-                return fallback;
+                result = default (T);
+                return false;
             }
         }
 
diff --git a/src/Core/Banshee.Core/Banshee.Configuration/XmlConfigurationClient.cs b/src/Core/Banshee.Core/Banshee.Configuration/XmlConfigurationClient.cs
index 4eb6b04..a19a451 100644
--- a/src/Core/Banshee.Core/Banshee.Configuration/XmlConfigurationClient.cs
+++ b/src/Core/Banshee.Core/Banshee.Configuration/XmlConfigurationClient.cs
@@ -86,41 +86,27 @@ namespace Banshee.Configuration
             }
         }
 
-        public T Get<T>(SchemaEntry<T> entry)
-        {
-            return Get<T>(entry.Namespace, entry.Key, entry.DefaultValue);
-        }
-
-        public T Get<T>(SchemaEntry<T> entry, T fallback)
-        {
-            return Get<T>(entry.Namespace, entry.Key, fallback);
-        }
-
-        public T Get<T>(string key, T fallback)
-        {
-            return Get<T>(null, key, fallback);
-        }
-
-        public T Get<T>(string namespce, string key, T fallback)
+        public bool TryGet<T>(string namespce, string key, out T result)
         {
             lock(xml_document) {
                 XmlNode namespace_node = GetNamespaceNode(namespce == null
                     ? new string [] {null_namespace}
                     : namespce.Split('.'), false);
 
-                if(namespace_node == null) {
-                    return fallback;
-                }
-
-                foreach(XmlNode node in namespace_node.ChildNodes) {
-                    if(node.Attributes[tag_identifier_attribute_name].Value == key && node.Name == value_tag_name) {
-                        XmlSerializer serializer = new XmlSerializer(typeof(T));
-                        using (var reader = new StringReader(node.InnerXml) ) {
-                            return (T) serializer.Deserialize(reader);
+                if(namespace_node != null) {
+                    foreach(XmlNode node in namespace_node.ChildNodes) {
+                        if(node.Attributes[tag_identifier_attribute_name].Value == key && node.Name == value_tag_name) {
+                            XmlSerializer serializer = new XmlSerializer(typeof(T));
+                            using (var reader = new StringReader(node.InnerXml) ) {
+                                result = (T) serializer.Deserialize(reader);
+                                return true;
+                            }
                         }
                     }
                 }
-                return fallback;
+
+                result = default (T);
+                return false;
             }
         }
 
diff --git a/src/Core/Banshee.Core/Makefile.in b/src/Core/Banshee.Core/Makefile.in
index 1b4f670..a118860 100644
--- a/src/Core/Banshee.Core/Makefile.in
+++ b/src/Core/Banshee.Core/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -483,12 +491,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -540,7 +544,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -668,14 +672,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.Core/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.Core/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.Core/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.Core/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -693,25 +697,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -741,13 +761,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -779,6 +803,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -799,6 +824,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -806,21 +833,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -842,7 +878,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -907,6 +942,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.Core/Resources/translators.xml b/src/Core/Banshee.Core/Resources/translators.xml
index d5358c9..3684403 100644
--- a/src/Core/Banshee.Core/Resources/translators.xml
+++ b/src/Core/Banshee.Core/Resources/translators.xml
@@ -196,6 +196,7 @@
   </language>
   <language code="th" name="Thai">
     <person>Isriya Paireepairit</person>
+    <person>Sira Nokyoongtong</person>
     <person>Theppitak Karoonboonyanan</person>
   </language>
   <language code="tr" name="Türkçe">
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs
index 79ef2d4..ddc17a0 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/Bookmark.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.Linq;
 using System.Collections.Generic;
 
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumInfo.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumInfo.cs
index e622f2c..85558aa 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumInfo.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumInfo.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 
 using Mono.Unix;
 
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs
index 9894afc..27a91ba 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseAlbumListModel.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Text;
 using System.Collections.Generic;
 using Mono.Unix;
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistInfo.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistInfo.cs
index 0a0fbfa..3ebf54f 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistInfo.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistInfo.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 
 using Mono.Unix;
 
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs
index aaf0d52..f7a2b4b 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseArtistListModel.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections.Generic;
 using Mono.Unix;
 
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseFilterListModel.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseFilterListModel.cs
index 7c8bcdb..018a0f4 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseFilterListModel.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseFilterListModel.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Text;
 using System.Collections.Generic;
 
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs
index 016c1a6..d9e5a99 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs
@@ -28,7 +28,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 using System.IO;
 
 using Hyena;
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackListModel.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackListModel.cs
index afbdf6a..733aec2 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackListModel.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackListModel.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Text;
 using System.Collections.Generic;
 using System.Linq;
@@ -178,8 +177,8 @@ namespace Banshee.Collection.Database
 
         private void HandleCacheAggregatesUpdated (IDataReader reader)
         {
-            filtered_duration = TimeSpan.FromMilliseconds (reader.IsDBNull (1) ? 0 : Convert.ToInt64 (reader[1]));
-            filtered_filesize = reader.IsDBNull (2) ? 0 : Convert.ToInt64 (reader[2]);
+            filtered_duration = TimeSpan.FromMilliseconds (reader[1] == null ? 0 : Convert.ToInt64 (reader[1]));
+            filtered_filesize = reader[2] == null ? 0 : Convert.ToInt64 (reader[2]);
         }
 
         public override void Clear ()
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/IDatabaseTrackModelCache.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/IDatabaseTrackModelCache.cs
index 9f89bdf..04ec262 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/IDatabaseTrackModelCache.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/IDatabaseTrackModelCache.cs
@@ -27,7 +27,7 @@
 //
 
 using System;
-using System.Data;
+
 using Banshee.Collection;
 using Hyena.Data.Sqlite;
 using Hyena.Query;
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBy.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBy.cs
index 7f9a169..a68765d 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBy.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBy.cs
@@ -27,6 +27,8 @@
 //
 
 using System;
+using System.Linq;
+using System.Collections.Generic;
 
 using Hyena;
 using Hyena.Data;
@@ -46,11 +48,12 @@ namespace Banshee.Collection.Database
     /// </summary>
     public abstract class RandomBy
     {
-        protected const string RANDOM_CONDITION = "AND LastStreamError = 0 AND (LastPlayedStamp < ? OR LastPlayedStamp IS NULL) AND (LastSkippedStamp < ? OR LastSkippedStamp IS NULL)";
-
         protected DatabaseTrackListModel Model { get; private set; }
         protected IDatabaseTrackModelCache Cache { get; private set; }
 
+        private HyenaSqliteCommand shuffler_query;
+        private string filtered_shuffler_condition;
+
         protected Shuffler Shuffler { get; private set; }
 
         public string Id { get; private set; }
@@ -79,7 +82,6 @@ namespace Banshee.Collection.Database
             Shuffler = shuffler;
         }
 
-        private HyenaSqliteCommand shuffler_query;
         protected HyenaSqliteCommand ShufflerQuery {
             get {
                 if (shuffler_query == null) {
@@ -102,6 +104,22 @@ namespace Banshee.Collection.Database
             }
         }
 
+        private string CacheCondition {
+            get {
+                if (filtered_shuffler_condition == null) {
+                    filtered_shuffler_condition = String.Format (@"
+                        AND {0}
+                        AND LastStreamError = 0
+                        AND (LastPlayedStamp < ? OR LastPlayedStamp IS NULL)
+                        AND (LastSkippedStamp < ? OR LastSkippedStamp IS NULL)
+                        ORDER BY {1}",
+                        Condition ?? "1=1", OrderBy
+                    );
+                }
+                return filtered_shuffler_condition;
+            }
+        }
+
         public void SetModelAndCache (DatabaseTrackListModel model, IDatabaseTrackModelCache cache)
         {
             if (Model != model) {
@@ -113,6 +131,7 @@ namespace Banshee.Collection.Database
             }
 
             shuffler_query = null;
+            filtered_shuffler_condition = null;
         }
 
         protected virtual void OnModelAndCacheUpdated ()
@@ -138,49 +157,50 @@ namespace Banshee.Collection.Database
 
         public TrackInfo GetTrack (DateTime after)
         {
-            if (Shuffler == Shuffler.Playback) {
-                return GetPlaybackTrack (after);
-            } else {
-                var track = GetShufflerTrack (after);
-
-                // Record this shuffle
-                Shuffler.RecordShuffle (track);
+            if (!IsReady) {
+                return null;
+            }
 
-                return track;
+            TrackInfo track = null;
+            using (var context = GetQueryContext (after)) {
+                var args = context.Parameters.ToList ();
+                args.Add (after);
+
+                if (Shuffler == Shuffler.Playback) {
+                    // Add a second after arg b/c we query against lastplay/lastskip stamps
+                    args.Add (after);
+                    track = Cache.GetSingle (Select, From, CacheCondition, args.ToArray ());
+                } else {
+                    track = GetTrack (ShufflerQuery, args.ToArray ());
+                }
             }
+
+            Shuffler.RecordShuffle (track as DatabaseTrackInfo);
+            return track;
         }
 
-        /// <summary>
-        /// Returns next Track to play in playback mode
-        /// </summary>
-        /// <param name="after">
-        /// A <see cref="DateTime"/>
-        /// </param>
-        /// <returns>
-        /// A <see cref="TrackInfo"/>
-        /// </returns>
-        /// <remarks>
-        /// When implementing this method, use Cache to query the model so user defined filters are respected
-        /// The playback track we choose is dependent on the current PlaybackSource, and what
-        /// (if any) query/filter is active there, represented by its DatabaseTrackModel (and its underlying cache).
-        ///
-        /// Remember to use RANDOM_CONDITION when using Cache, see other RandomBy Implementations for an Example
-        /// </remarks>
-        /// <see>RandomBy.Cache</see>
-        public abstract TrackInfo GetPlaybackTrack (DateTime after);
+        public class QueryContext : IDisposable
+        {
+            public QueryContext () {}
+            public virtual IEnumerable<object> Parameters { get; set; }
+            public virtual void Dispose () {}
+        }
 
-        /// <summary>
-        /// Returns Track to play in Shuffler Mode aka Auto-Dj
-        /// </summary>
-        /// <param name="after">
-        /// A <see cref="DateTime"/>
-        /// </param>
-        /// <returns>
-        /// A <see cref="DatabaseTrackInfo"/>
-        /// </returns>
-        /// <remarks>GetShufflerTrack should use the whole model to query a track</remarks>
-        /// <see>RandomBy.GetTrack</see>
-        public abstract DatabaseTrackInfo GetShufflerTrack (DateTime after);
+        protected virtual QueryContext GetQueryContext (DateTime after)
+        {
+            return new QueryContext () {
+                Parameters = GetConditionParameters (after)
+            };
+        }
+
+        public virtual void SetLastTrack (TrackInfo track)
+        {
+        }
+
+        protected virtual IEnumerable<object> GetConditionParameters (DateTime after)
+        {
+            yield break;
+        }
 
         protected DatabaseTrackInfo GetTrack (HyenaSqliteCommand cmd, params object [] args)
         {
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs
index 17398e9..56055e9 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByAlbum.cs
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Collections.Generic;
 
 using Hyena;
 using Hyena.Data;
@@ -40,8 +41,6 @@ namespace Banshee.Collection.Database
 {
     public class RandomByAlbum : RandomBy
     {
-        private static string last_played_condition = String.Format ("AND CoreTracks.AlbumID = ? {0} ORDER BY Disc ASC, TrackNumber ASC", RANDOM_CONDITION);
-
         private HyenaSqliteCommand album_query;
         private int? album_id;
 
@@ -65,7 +64,9 @@ namespace Banshee.Collection.Database
             album_id = null;
         }
 
-        public override bool IsReady { get { return album_id != null; } }
+        public override bool IsReady {
+            get { return album_id != null; }
+        }
 
         public override bool Next (DateTime after)
         {
@@ -80,17 +81,17 @@ namespace Banshee.Collection.Database
             return IsReady;
         }
 
-        public override TrackInfo GetPlaybackTrack (DateTime after)
+        public override void SetLastTrack (TrackInfo track)
         {
-            return album_id == null ? null : Cache.GetSingleWhere (last_played_condition, (int)album_id, after, after);
+            var dbtrack = track as DatabaseTrackInfo;
+            if (dbtrack != null && dbtrack.AlbumId != album_id) {
+                album_id = dbtrack.AlbumId;
+            }
         }
 
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
+        protected override IEnumerable<object> GetConditionParameters (DateTime after)
         {
-            if (album_id == null)
-                return null;
-
-            return GetTrack (ShufflerQuery, (int)album_id, after);
+            yield return album_id == null ? (int)0 : (int)album_id;
         }
 
         private HyenaSqliteCommand AlbumQuery {
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs
index d4e196b..154a3e2 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByArtist.cs
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Collections.Generic;
 
 using Hyena;
 using Hyena.Data;
@@ -40,7 +41,6 @@ namespace Banshee.Collection.Database
 {
     public class RandomByArtist : RandomBy
     {
-        private static string track_condition = String.Format ("AND CoreAlbums.ArtistID = ? {0} ORDER BY CoreTracks.Year, CoreTracks.AlbumID ASC, Disc ASC, TrackNumber ASC", RANDOM_CONDITION);
         private HyenaSqliteCommand query;
         private int? id;
 
@@ -79,17 +79,20 @@ namespace Banshee.Collection.Database
             return IsReady;
         }
 
-        public override TrackInfo GetPlaybackTrack (DateTime after)
+        public override void SetLastTrack (TrackInfo track)
         {
-            return id == null ? null : Cache.GetSingleWhere (track_condition, (int)id, after, after);
+            var dbtrack = track as DatabaseTrackInfo;
+            if (dbtrack != null) {
+                var new_id = dbtrack.Album.ArtistId;
+                if (new_id != id) {
+                    id = new_id;
+                }
+            }
         }
 
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
+        protected override IEnumerable<object> GetConditionParameters (DateTime after)
         {
-            if (id == null)
-                return null;
-
-            return GetTrack (ShufflerQuery, (int)id, after);
+            yield return id == null ? (int)0 : (int)id;
         }
 
         private HyenaSqliteCommand Query {
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs
index d0511c1..e5df18c 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByOff.cs
@@ -25,6 +25,8 @@
 // THE SOFTWARE.
 
 using System;
+using System.Collections.Generic;
+
 using Mono.Unix;
 
 namespace Banshee.Collection.Database
@@ -45,16 +47,6 @@ namespace Banshee.Collection.Database
             return false;
         }
 
-        public override TrackInfo GetPlaybackTrack (DateTime after)
-        {
-            return null;
-        }
-
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
-        {
-            return null;
-        }
-
         #endregion
     }
 }
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs
index 57e61d3..6d2c882 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByRating.cs
@@ -31,6 +31,7 @@
 //
 
 using System;
+using System.Collections.Generic;
 
 using Banshee.PlaybackController;
 using Mono.Unix;
@@ -39,8 +40,6 @@ namespace Banshee.Collection.Database
 {
     public class RandomByRating : RandomBySlot
     {
-        private static string track_condition = String.Format ("AND (CoreTracks.Rating = ? OR (? = 3 AND CoreTracks.Rating = 0)) {0} ORDER BY RANDOM()", RANDOM_CONDITION);
-
         public RandomByRating () : base ("rating")
         {
             Label = Catalog.GetString ("Shuffle by _Rating");
@@ -51,21 +50,11 @@ namespace Banshee.Collection.Database
             OrderBy = "RANDOM()";
         }
 
-        public override TrackInfo GetPlaybackTrack (DateTime after)
-        {
-            var track = !IsReady ? null : Cache.GetSingleWhere (track_condition, slot + 1, slot + 1, after, after);
-            Reset ();
-            return track;
-        }
-
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
+        protected override IEnumerable<object> GetConditionParameters (DateTime after)
         {
-            if (!IsReady)
-                return null;
-
-            var track = GetTrack (ShufflerQuery, slot + 1, slot + 1, after);
+            yield return slot + 1;
+            yield return slot + 1;
             Reset ();
-            return track;
         }
 
         protected override int Slots {
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs
index ec61ce6..28fda52 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByScore.cs
@@ -27,16 +27,16 @@
 //
 
 using System;
+using System.Collections.Generic;
 
-using Banshee.PlaybackController;
 using Mono.Unix;
 
+using Banshee.PlaybackController;
+
 namespace Banshee.Collection.Database
 {
     public class RandomByScore : RandomBySlot
     {
-        private static string track_condition = String.Format ("AND (CoreTracks.Score BETWEEN ? AND ? OR (? = 50 AND CoreTracks.Score = 0)) {0} ORDER BY RANDOM()", RANDOM_CONDITION);
-
         public RandomByScore () : base ("score")
         {
             Label = Catalog.GetString ("Shuffle by S_core");
@@ -47,27 +47,15 @@ namespace Banshee.Collection.Database
             OrderBy = "RANDOM()";
         }
 
-        public override TrackInfo GetPlaybackTrack (DateTime after)
-        {
-            int min = slot * 100 / Slots + 1;
-            int max = (slot + 1) * 100 / Slots;
-
-            var track = !IsReady ? null : Cache.GetSingleWhere (track_condition, min, max, max, after, after);
-            Reset ();
-            return track;
-        }
-
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
+        protected override IEnumerable<object> GetConditionParameters (DateTime after)
         {
-            if (!IsReady)
-                return null;
-
             int min = slot * 100 / Slots + 1;
             int max = (slot + 1) * 100 / Slots;
 
-            var track = GetTrack (ShufflerQuery, min, max, max, after);
+            yield return min;
+            yield return max;
+            yield return max;
             Reset ();
-            return track;
         }
 
         protected override int Slots {
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBySlot.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBySlot.cs
index 2adf6c2..9216888 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBySlot.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomBySlot.cs
@@ -31,6 +31,7 @@
 //
 
 using System;
+using System.Collections.Generic;
 using System.Linq;
 
 using Hyena;
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs
index 24b133f..6e7b4f5 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/RandomByTrack.cs
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Collections.Generic;
 
 using Hyena;
 using Hyena.Data;
@@ -40,8 +41,6 @@ namespace Banshee.Collection.Database
 {
     public class RandomByTrack : RandomBy
     {
-        private static string track_condition = String.Format ("{0} ORDER BY RANDOM()", RANDOM_CONDITION);
-
         public RandomByTrack () : base ("song")
         {
             Label = Catalog.GetString ("Shuffle by _Song");
@@ -56,15 +55,5 @@ namespace Banshee.Collection.Database
         {
             return true;
         }
-
-        public override TrackInfo GetPlaybackTrack (DateTime after)
-        {
-            return Cache.GetSingleWhere (track_condition, after, after);
-        }
-
-        public override DatabaseTrackInfo GetShufflerTrack (DateTime after)
-        {
-            return GetTrack (ShufflerQuery, after);
-        }
     }
 }
diff --git a/src/Core/Banshee.Services/Banshee.Collection.Database/Shuffler.cs b/src/Core/Banshee.Services/Banshee.Collection.Database/Shuffler.cs
index 1ed10bc..296d496 100644
--- a/src/Core/Banshee.Services/Banshee.Collection.Database/Shuffler.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection.Database/Shuffler.cs
@@ -49,7 +49,7 @@ namespace Banshee.Collection.Database
 
     public class Shuffler
     {
-        public static readonly Shuffler Playback = new Shuffler () { Id = "playback", DbId = 0 };
+        public static readonly Shuffler Playback = new Shuffler (true);
 
         private static string shuffles_sql = "INSERT OR REPLACE INTO CoreShuffles (ShufflerID, LastShuffledAt, TrackID) ";
         private static string modify_sql   = "INSERT OR REPLACE INTO CoreShuffleModifications (ShufflerID, LastModifiedAt, ModificationType, TrackID) ";
@@ -62,6 +62,7 @@ namespace Banshee.Collection.Database
         private List<RandomBy> random_modes;
         private Dictionary<TypeExtensionNode, RandomBy> node_map = new Dictionary<TypeExtensionNode, RandomBy> ();
         private DatabaseTrackListModel model;
+        private TrackInfo last_track;
 
         public string Id { get; private set; }
         public int DbId { get; private set; }
@@ -71,10 +72,16 @@ namespace Banshee.Collection.Database
 
         public IList<RandomBy> RandomModes { get { return random_modes; } }
 
-        private Shuffler ()
+        private Shuffler (bool playback) : this ()
         {
-            random_modes = new List<RandomBy> ();
-            AddinManager.AddExtensionNodeHandler ("/Banshee/PlaybackController/ShuffleModes", OnExtensionChanged);
+            Id = "playback";
+            DbId = 0;
+            ServiceManager.PlayerEngine.ConnectEvent (OnPlayerEvent, Banshee.MediaEngine.PlayerEvent.StartOfStream);
+        }
+
+        private void OnPlayerEvent (Banshee.MediaEngine.PlayerEventArgs args)
+        {
+            last_track = ServiceManager.PlayerEngine.CurrentTrack;
         }
 
         public Shuffler (string id) : this ()
@@ -83,6 +90,12 @@ namespace Banshee.Collection.Database
             LoadOrCreate ();
         }
 
+        private Shuffler ()
+        {
+            random_modes = new List<RandomBy> ();
+            AddinManager.AddExtensionNodeHandler ("/Banshee/PlaybackController/ShuffleModes", OnExtensionChanged);
+        }
+
         private void OnExtensionChanged (object o, ExtensionNodeEventArgs args)
         {
             var tnode = (TypeExtensionNode)args.ExtensionNode;
@@ -203,6 +216,10 @@ namespace Banshee.Collection.Database
 
             var random = random_modes.FirstOrDefault (r => r.Id == mode);
             if (random != null) {
+                if (last_track != null && !resetSinceTime) {
+                    random.SetLastTrack (last_track);
+                }
+
                 if (!random.IsReady) {
                     if (!random.Next (random_began_at) && repeat) {
                         random_began_at = last_random;
@@ -230,4 +247,4 @@ namespace Banshee.Collection.Database
             }
         }
     }
-}
\ No newline at end of file
+}
diff --git a/src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs b/src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs
index 2f33432..034e377 100644
--- a/src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs
+++ b/src/Core/Banshee.Services/Banshee.Collection/RescanPipeline.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 
 using Mono.Unix;
 
diff --git a/src/Core/Banshee.Services/Banshee.Configuration/DatabaseConfigurationClient.cs b/src/Core/Banshee.Services/Banshee.Configuration/DatabaseConfigurationClient.cs
index 53aa309..3097c4e 100644
--- a/src/Core/Banshee.Services/Banshee.Configuration/DatabaseConfigurationClient.cs
+++ b/src/Core/Banshee.Services/Banshee.Configuration/DatabaseConfigurationClient.cs
@@ -26,7 +26,6 @@
  */
 
 using System;
-using System.Data;
 
 using Hyena.Data.Sqlite;
 
@@ -64,34 +63,19 @@ namespace Banshee.Configuration
                 "UPDATE {0} SET Value=? WHERE Key=?", TableName));
         }
 
-        public T Get <T> (SchemaEntry<T> entry)
-        {
-            return Get (entry.Namespace, entry.Key, entry.DefaultValue);
-        }
-
-        public T Get <T> (SchemaEntry<T> entry, T fallback)
-        {
-            return Get (entry.Namespace, entry.Key, fallback);
-        }
-
-        public T Get <T> (string key, T fallback)
-        {
-            return Get (null, key, fallback);
-        }
-
-        public T Get <T> (string namespce, string key, T fallback)
+        public bool TryGet <T> (string namespce, string key, out T result)
         {
             try {
                 using (IDataReader reader = Get (namespce, key)) {
                     if (reader.Read ()) {
-                        return (T) Convert.ChangeType (reader.GetString (0), typeof (T));
-                    } else {
-                        return fallback;
+                        result = (T) Convert.ChangeType (reader[0], typeof (T));
+                        return true;
                     }
                 }
-            } catch {
-                return fallback;
-            }
+            } catch {}
+
+            result = default (T);
+            return false;
         }
 
         private IDataReader Get (string namespce, string key)
@@ -100,16 +84,6 @@ namespace Banshee.Configuration
                 Banshee.Configuration.MemoryConfigurationClient.MakeKey (namespce, key));
         }
 
-        public void Set <T> (SchemaEntry<T> entry, T value)
-        {
-            Set (entry.Namespace, entry.Key, value);
-        }
-
-        public void Set <T> (string key, T value)
-        {
-            Set (null, key, value);
-        }
-
         public void Set <T> (string namespce, string key, T value)
         {
             string fq_key = Banshee.Configuration.MemoryConfigurationClient.MakeKey (namespce, key);
diff --git a/src/Core/Banshee.Services/Banshee.Database/BansheeDbConnection.cs b/src/Core/Banshee.Services/Banshee.Database/BansheeDbConnection.cs
index dab8f53..b9e4c23 100644
--- a/src/Core/Banshee.Services/Banshee.Database/BansheeDbConnection.cs
+++ b/src/Core/Banshee.Services/Banshee.Database/BansheeDbConnection.cs
@@ -30,7 +30,6 @@ using System;
 using System.Linq;
 using System.Collections.Generic;
 using System.IO;
-using System.Data;
 using System.Threading;
 
 using Hyena;
diff --git a/src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs b/src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs
index 3d7bfd0..90cddb6 100644
--- a/src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs
+++ b/src/Core/Banshee.Services/Banshee.Database/BansheeDbFormatMigrator.cs
@@ -28,12 +28,10 @@
 //
 
 using System;
-using System.Data;
 using System.Reflection;
 using System.Text;
 using System.Threading;
 using Mono.Unix;
-using Mono.Data.Sqlite;
 
 using Hyena;
 using Hyena.Jobs;
@@ -731,6 +729,8 @@ namespace Banshee.Database
                 // Make paths not relative for Music Library items
                 string library_path = Banshee.Library.LibrarySource.OldLocationSchema.Get (Banshee.Library.MusicLibrarySource.GetDefaultBaseDirectory ());
                 if (library_path != null) {
+                    connection.AddFunction<MigratePartialFunction> ();
+
                     int podcast_src_id = connection.Query<int> ("SELECT PrimarySourceID FROM CorePrimarySources WHERE StringID = 'PodcastSource-PodcastLibrary'");
 
                     connection.Execute (@"
@@ -743,6 +743,8 @@ namespace Banshee.Database
                         UPDATE CoreTracks SET Uri = BANSHEE_MIGRATE_PARTIAL(?, Uri)
                         WHERE UriType = 1
                           AND PrimarySourceID = ?", podcast_path, podcast_src_id);
+
+                    connection.RemoveFunction<MigratePartialFunction> ();
                 }
             } catch (Exception e) {
                 Hyena.Log.Exception (e);
@@ -1393,7 +1395,7 @@ namespace Banshee.Database
             );
 
             int count = 0;
-            using (System.Data.IDataReader reader = ServiceManager.DbConnection.Query (select_command)) {
+            using (var reader = ServiceManager.DbConnection.Query (select_command)) {
                 while (reader.Read ()) {
                     DatabaseTrackInfo track = null;
                     try {
diff --git a/src/Core/Banshee.Services/Banshee.Database/BansheeModelCache.cs b/src/Core/Banshee.Services/Banshee.Database/BansheeModelCache.cs
index 83a66da..5bcdca7 100644
--- a/src/Core/Banshee.Services/Banshee.Database/BansheeModelCache.cs
+++ b/src/Core/Banshee.Services/Banshee.Database/BansheeModelCache.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 
 using Hyena.Data;
 using Hyena.Data.Sqlite;
diff --git a/src/Core/Banshee.Services/Banshee.Database/BansheeModelProvider.cs b/src/Core/Banshee.Services/Banshee.Database/BansheeModelProvider.cs
index 033c69e..3ac9e6a 100644
--- a/src/Core/Banshee.Services/Banshee.Database/BansheeModelProvider.cs
+++ b/src/Core/Banshee.Services/Banshee.Database/BansheeModelProvider.cs
@@ -28,7 +28,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 
 using Hyena.Data.Sqlite;
 
diff --git a/src/Core/Banshee.Services/Banshee.Database/SortKeyUpdater.cs b/src/Core/Banshee.Services/Banshee.Database/SortKeyUpdater.cs
index 8a6d7e2..5d93cec 100644
--- a/src/Core/Banshee.Services/Banshee.Database/SortKeyUpdater.cs
+++ b/src/Core/Banshee.Services/Banshee.Database/SortKeyUpdater.cs
@@ -25,6 +25,7 @@
 //
 
 using System;
+using System.Linq;
 using System.Globalization;
 
 using Banshee.Collection;
diff --git a/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs b/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs
deleted file mode 100644
index 3c63c32..0000000
--- a/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// HomeDirectoryImportSource.cs
-//
-// Author:
-//   Aaron Bockover <abockover at novell.com>
-//
-// Copyright (C) 2006-2007 Novell, Inc.
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-using System;
-using Mono.Unix;
-
-namespace Banshee.Library
-{
-    public class HomeDirectoryImportSource : IImportSource
-    {
-        public HomeDirectoryImportSource ()
-        {
-        }
-
-        public void Import ()
-        {
-            Banshee.ServiceStack.ServiceManager.Get<LibraryImportManager> ().Enqueue (
-                Environment.GetFolderPath (Environment.SpecialFolder.Personal)
-            );
-        }
-
-        public string Name {
-            get { return Catalog.GetString ("Home Folder"); }
-        }
-
-        public string ImportLabel { get { return null; } }
-
-        public string [] IconNames {
-            get { return new string [] { "user-home", "gtk-home" }; }
-        }
-
-        public bool CanImport {
-            get { return true; }
-        }
-
-        public int SortOrder {
-            get { return 12; }
-        }
-    }
-}
diff --git a/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs b/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs
index 33263b3..ea84fc8 100644
--- a/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs
+++ b/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs
@@ -37,8 +37,6 @@ namespace Banshee.Library
 {
     public class ImportSourceManager : IRegisterOnDemandService, IEnumerable<IImportSource>
     {
-        private HomeDirectoryImportSource home_source = new HomeDirectoryImportSource ();
-
         public ImportSourceManager ()
         {
         }
@@ -46,7 +44,6 @@ namespace Banshee.Library
         public IEnumerator<IImportSource> GetEnumerator ()
         {
             List<IImportSource> import_sources = new List<IImportSource> ();
-            import_sources.Add (home_source);
 
             foreach (IImportSource source in AddinManager.GetExtensionObjects ("/Banshee/Library/ImportSource")) {
                 if (source.CanImport) {
diff --git a/src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs b/src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs
index 295ff23..437f377 100644
--- a/src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs
+++ b/src/Core/Banshee.Services/Banshee.Library/MusicLibrarySource.cs
@@ -34,6 +34,7 @@ using Mono.Unix;
 
 using Banshee.Base;
 using Banshee.Collection;
+using Banshee.Query;
 using Banshee.SmartPlaylist;
 using Banshee.Preferences;
 using Banshee.Configuration;
@@ -127,7 +128,12 @@ namespace Banshee.Library
             new SmartPlaylistDefinition (
                 Catalog.GetString ("Recently Added"),
                 Catalog.GetString ("Songs imported within the last week"),
-                "added<\"1 week ago\"", true),
+                "added<\"1 week ago\"", true) { Order = BansheeQuery.FindOrder (BansheeQuery.DateAddedField, false) },
+
+            new SmartPlaylistDefinition (
+                Catalog.GetString ("Recently Played"),
+                Catalog.GetString ("Recently played songs"),
+                "played<\"2 weeks ago\" plays>0", true) { Order = BansheeQuery.FindOrder (BansheeQuery.LastPlayedField, false) },
 
             new SmartPlaylistDefinition (
                 Catalog.GetString ("Unheard"),
diff --git a/src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs b/src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs
index 1d36d8e..2f296b6 100644
--- a/src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs
+++ b/src/Core/Banshee.Services/Banshee.Playlist/AbstractPlaylistSource.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections;
 using System.Collections.Generic;
 
diff --git a/src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs b/src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs
index 0b9efa4..b343a3f 100644
--- a/src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs
+++ b/src/Core/Banshee.Services/Banshee.Playlist/PlaylistSource.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections;
 using System.Collections.Generic;
 
diff --git a/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs b/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
index e088ceb..ec8fbb2 100644
--- a/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
+++ b/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
@@ -28,7 +28,7 @@
 //
 
 using System;
-using System.Data;
+using System.Linq;
 using System.Text;
 using System.Collections.Generic;
 
@@ -515,7 +515,7 @@ namespace Banshee.Query
 
         private static QueryOrder CreateQueryOrder (string name, bool asc, string label, QueryField field)
         {
-            return new QueryOrder (CreateOrderName (name, asc), label, GetSort (name, asc), field);
+            return new QueryOrder (CreateOrderName (name, asc), label, GetSort (name, asc), field, asc);
         }
 
         public static QueryLimit FindLimit (string name)
@@ -527,6 +527,11 @@ namespace Banshee.Query
             return null;
         }
 
+        public static QueryOrder FindOrder (QueryField field, bool asc)
+        {
+            return Orders.FirstOrDefault (o => o != null && o.Field == field && o.Ascending == asc);
+        }
+
         public static QueryOrder FindOrder (string name, bool asc)
         {
             return FindOrder (CreateOrderName (name, asc));
diff --git a/src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs b/src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs
index d1374b1..3f9f998 100644
--- a/src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs
+++ b/src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Text.RegularExpressions;
 using System.Collections;
 using System.Collections.Generic;
diff --git a/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistDefinition.cs b/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistDefinition.cs
index dc08c3c..a68585c 100644
--- a/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistDefinition.cs
+++ b/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistDefinition.cs
@@ -35,12 +35,12 @@ using Banshee.Sources;
 
 namespace Banshee.SmartPlaylist
 {
-    public struct SmartPlaylistDefinition
+    public class SmartPlaylistDefinition
     {
         public readonly string Name;
         public readonly string Description;
         public readonly string Condition;
-        public readonly QueryOrder Order;
+        public QueryOrder Order;
         public readonly QueryLimit Limit;
         public readonly IntegerQueryValue LimitNumber;
         public readonly bool HiddenWhenEmpty;
diff --git a/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs b/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs
index 53a5717..c1058a8 100644
--- a/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs
+++ b/src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections;
 using System.Collections.Generic;
 
@@ -150,7 +149,16 @@ namespace Banshee.SmartPlaylist
 
         public QueryOrder QueryOrder {
             get { return query_order; }
-            set { query_order = value; }
+            set {
+                query_order = value;
+                if (value != null) {
+                    Properties.Set<string> ("TrackListSortField", value.Field.Name);
+                    Properties.Set<bool> ("TrackListSortAscending", value.Ascending);
+                } else {
+                    Properties.Remove ("TrackListSortField");
+                    Properties.Remove ("TrackListSortAscending");
+                }
+            }
         }
 
         public IntegerQueryValue LimitValue {
@@ -164,7 +172,7 @@ namespace Banshee.SmartPlaylist
         }
 
         protected string OrderSql {
-            get { return QueryOrder == null ? null : QueryOrder.ToSql (); }
+            get { return !IsLimited || QueryOrder == null ? null : QueryOrder.ToSql (); }
         }
 
         protected string LimitSql {
@@ -215,7 +223,6 @@ namespace Banshee.SmartPlaylist
             LimitValue = limit_value;
             IsHiddenWhenEmpty = hiddenWhenEmpty;
 
-            SetProperties ();
             UpdateDependencies ();
         }
 
@@ -310,7 +317,7 @@ namespace Banshee.SmartPlaylist
                     (Name, Condition, OrderBy, LimitNumber, LimitCriterion, PrimarySourceID, IsTemporary, IsHiddenWhenEmpty)
                     VALUES (?, ?, ?, ?, ?, ?, ?, ?)",
                 Name, ConditionXml,
-                IsLimited ? QueryOrder.Name : null,
+                QueryOrder != null ? QueryOrder.Name : null,
                 IsLimited ? LimitValue.ToSql () : null,
                 IsLimited ? Limit.Name : null,
                 PrimarySourceId, IsTemporary, IsHiddenWhenEmpty
diff --git a/src/Core/Banshee.Services/Makefile.am b/src/Core/Banshee.Services/Makefile.am
index 6ac86db..0de4ae2 100644
--- a/src/Core/Banshee.Services/Makefile.am
+++ b/src/Core/Banshee.Services/Makefile.am
@@ -80,7 +80,6 @@ SOURCES =  \
 	Banshee.Hardware/UsbPortInfo.cs \
 	Banshee.Hardware/VendorProductDeviceNode.cs \
 	Banshee.Hardware/VendorProductInfo.cs \
-	Banshee.Library/HomeDirectoryImportSource.cs \
 	Banshee.Library/IImportSource.cs \
 	Banshee.Library/ImportSourceManager.cs \
 	Banshee.Library/LibraryImportManager.cs \
diff --git a/src/Core/Banshee.Services/Makefile.in b/src/Core/Banshee.Services/Makefile.in
index 0e0e9f7..4ec68db 100644
--- a/src/Core/Banshee.Services/Makefile.in
+++ b/src/Core/Banshee.Services/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -17,8 +18,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,17 +83,31 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
-am__installdirs = "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-SCRIPTS = $(module_SCRIPTS)
-DIST_SOURCES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-moduleDATA_INSTALL = $(INSTALL_DATA)
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(moduledir)"
+SCRIPTS = $(module_SCRIPTS)
+DIST_SOURCES =
 DATA = $(module_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -211,29 +227,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -268,6 +265,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -309,9 +307,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -470,7 +471,6 @@ SOURCES = \
 	Banshee.Hardware/UsbPortInfo.cs \
 	Banshee.Hardware/VendorProductDeviceNode.cs \
 	Banshee.Hardware/VendorProductInfo.cs \
-	Banshee.Library/HomeDirectoryImportSource.cs \
 	Banshee.Library/IImportSource.cs \
 	Banshee.Library/ImportSourceManager.cs \
 	Banshee.Library/LibraryImportManager.cs \
@@ -655,12 +655,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -712,7 +708,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -840,14 +836,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.Services/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.Services/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.Services/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.Services/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -865,25 +861,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -893,20 +905,23 @@ clean-libtool:
 install-moduleDATA: $(module_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_DATA)'; for p in $$list; do \
+	@list='$(module_DATA)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(moduleDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	  $(moduleDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(moduledir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(moduledir)" || exit $$?; \
 	done
 
 uninstall-moduleDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_DATA)'; test -n "$(moduledir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -930,13 +945,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -968,6 +987,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -988,6 +1008,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -995,21 +1017,30 @@ info-am:
 install-data-am: install-moduleDATA install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -1031,7 +1062,6 @@ ps-am:
 uninstall-am: uninstall-moduleDATA uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -1096,6 +1126,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ArtworkManager.cs b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ArtworkManager.cs
index 2414ca1..cba8ec8 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ArtworkManager.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ArtworkManager.cs
@@ -49,6 +49,7 @@ namespace Banshee.Collection.Gui
     {
         private Dictionary<int, SurfaceCache> scale_caches  = new Dictionary<int, SurfaceCache> ();
         private HashSet<int> cacheable_cover_sizes = new HashSet<int> ();
+        private HashSet<string> null_artwork_ids = new HashSet<string> ();
 
         private class SurfaceCache : LruCache<string, Cairo.ImageSurface>
         {
@@ -116,8 +117,13 @@ namespace Banshee.Collection.Gui
                 return surface;
             }
 
+            if (null_artwork_ids.Contains (id)) {
+                return null;
+            }
+
             Pixbuf pixbuf = LookupScalePixbuf (id, size);
             if (pixbuf == null || pixbuf.Handle == IntPtr.Zero) {
+                null_artwork_ids.Add (id);
                 return null;
             }
 
@@ -157,12 +163,17 @@ namespace Banshee.Collection.Gui
                 return null;
             }
 
+            if (null_artwork_ids.Contains (id)) {
+                return null;
+            }
+
             // Find the scaled, cached file
             string path = CoverArtSpec.GetPathForSize (id, size);
             if (File.Exists (new SafeUri (path))) {
                 try {
                     return new Pixbuf (path);
                 } catch {
+                    null_artwork_ids.Add (id);
                     return null;
                 }
             }
@@ -179,6 +190,7 @@ namespace Banshee.Collection.Gui
                         Pixbuf pixbuf = new Pixbuf (unconverted_path);
                         if (pixbuf.Width < 50 || pixbuf.Height < 50) {
                             Hyena.Log.DebugFormat ("Ignoring cover art {0} because less than 50x50", unconverted_path);
+                            null_artwork_ids.Add (id);
                             return null;
                         }
 
@@ -219,6 +231,7 @@ namespace Banshee.Collection.Gui
                 } catch {}
             }
 
+            null_artwork_ids.Add (id);
             return null;
         }
 
@@ -238,6 +251,8 @@ namespace Banshee.Collection.Gui
                 scale_caches[size].Remove (id);
             }
 
+            null_artwork_ids.Remove (id);
+
             if (inMemoryCacheOnly) {
                 return;
             }
diff --git a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/PersistentColumnController.cs b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/PersistentColumnController.cs
index 6d3fdba..497d466 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/PersistentColumnController.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/PersistentColumnController.cs
@@ -43,7 +43,9 @@ namespace Banshee.Collection.Gui
         private bool pending_changes;
         private uint timer_id = 0;
 
-        private string source_id, unique_source_id;
+        private string parent_source_ns;
+        private string source_ns;
+
         private Source source;
         public Source Source {
             get { return source; }
@@ -57,12 +59,14 @@ namespace Banshee.Collection.Gui
                 }
 
                 source = value;
-                source_id = unique_source_id = null;
+                source_ns = parent_source_ns = null;
 
                 if (source != null) {
-                    // If we have a parent, use their UniqueId so all children of a parent persist the same columns
-                    source_id = source.ParentConfigurationId;
-                    unique_source_id = source.ConfigurationId;
+                    // If we have a parent, use their UniqueId as a fallback in
+                    // case this source's column settings haven't been changed
+                    // from its parents
+                    parent_source_ns = String.Format ("{0}.{1}.", root_namespace, source.ParentConfigurationId);
+                    source_ns = String.Format ("{0}.{1}.", root_namespace, source.ConfigurationId);
                     Load ();
                 }
             }
@@ -89,10 +93,9 @@ namespace Banshee.Collection.Gui
                 int i = 0;
                 foreach (Column column in this) {
                     if (column.Id != null) {
-                        string @namespace = MakeNamespace (column.Id);
-                        column.Visible = ConfigurationClient.Get<bool> (@namespace, "visible", column.Visible);
-                        column.Width = ConfigurationClient.Get<double> (@namespace, "width", column.Width);
-                        column.OrderHint = ConfigurationClient.Get<int> (@namespace, "order", i);
+                        column.Visible = Get<bool> (column.Id, "visible", column.Visible);
+                        column.Width = Get<double> (column.Id, "width", column.Width);
+                        column.OrderHint = Get<int> (column.Id, "order", i);
                     } else {
                         column.OrderHint = -1;
                     }
@@ -101,8 +104,7 @@ namespace Banshee.Collection.Gui
 
                 Columns.Sort ((a, b) => a.OrderHint.CompareTo (b.OrderHint));
 
-                string sort_ns = String.Format ("{0}.{1}.{2}", root_namespace, unique_source_id, "sort");
-                string sort_column_id = ConfigurationClient.Get<string> (sort_ns, "column", null);
+                string sort_column_id = Get<string> ("sort", "column", null);
                 if (sort_column_id != null) {
                     ISortableColumn sort_column = null;
                     foreach (Column column in this) {
@@ -113,7 +115,7 @@ namespace Banshee.Collection.Gui
                     }
 
                     if (sort_column != null) {
-                        int sort_dir = ConfigurationClient.Get<int> (sort_ns, "direction", 0);
+                        int sort_dir = Get<int> ("sort", "direction", 0);
                         SortType sort_type = sort_dir == 0 ? SortType.None : sort_dir == 1 ? SortType.Ascending : SortType.Descending;
                         sort_column.SortType = sort_type;
                         base.SortColumn = sort_column;
@@ -167,19 +169,48 @@ namespace Banshee.Collection.Gui
                 }
 
                 if (SortColumn != null) {
-                    string ns = String.Format ("{0}.{1}.{2}", root_namespace, unique_source_id, "sort");
-                    ConfigurationClient.Set<string> (ns, "column", SortColumn.Id);
-                    ConfigurationClient.Set<int> (ns, "direction", (int)SortColumn.SortType);
+                    Set<string> ("sort", "column", SortColumn.Id);
+                    Set<int> ("sort", "direction", (int)SortColumn.SortType);
+                }
+            }
+        }
+
+        private void Set<T> (string ns, string key, T val)
+        {
+            string conf_ns = source_ns + ns;
+            T result;
+
+            if (source_ns != parent_source_ns) {
+                if (!ConfigurationClient.TryGet<T> (conf_ns, key, out result) &&
+                    val != null && val.Equals (ConfigurationClient.Get<T> (parent_source_ns + ns, key, default(T)))) {
+                    conf_ns = null;
                 }
             }
+
+            if (conf_ns != null) {
+                ConfigurationClient.Set<T> (conf_ns, key, val);
+            }
+        }
+
+        private T Get<T> (string ns, string key, T fallback)
+        {
+            T result;
+            if (ConfigurationClient.TryGet<T> (source_ns + ns, key, out result)) {
+                return result;
+            }
+
+            if (source_ns != parent_source_ns) {
+                return ConfigurationClient.Get<T> (parent_source_ns + ns, key, fallback);
+            }
+
+            return fallback;
         }
 
         private void Save (Column column, int index)
         {
-            string @namespace = MakeNamespace (column.Id);
-            ConfigurationClient.Set<int> (@namespace, "order", index);
-            ConfigurationClient.Set<bool> (@namespace, "visible", column.Visible);
-            ConfigurationClient.Set<double> (@namespace, "width", column.Width);
+            Set<int> (column.Id, "order", index);
+            Set<bool> (column.Id, "visible", column.Visible);
+            Set<double> (column.Id, "width", column.Width);
         }
 
         protected override void OnWidthsChanged ()
@@ -191,11 +222,6 @@ namespace Banshee.Collection.Gui
             base.OnWidthsChanged ();
         }
 
-        private string MakeNamespace (string name)
-        {
-            return String.Format ("{0}.{1}.{2}", root_namespace, source_id, name);
-        }
-
         public override bool EnableColumnMenu {
             get { return true; }
         }
diff --git a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/TrackListView.cs b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/TrackListView.cs
index e1ebe21..4128fca 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/TrackListView.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/TrackListView.cs
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Linq;
 using Mono.Unix;
 using Gtk;
 
@@ -57,7 +58,8 @@ namespace Banshee.Collection.Gui
             //Console.WriteLine ("TrackListView.SetModel for {0} with vpos {1}", value, vpos);
 
             if (value != null) {
-                Source source = ServiceManager.SourceManager.ActiveSource;
+                Source active_source = ServiceManager.SourceManager.ActiveSource;
+                Source source = active_source;
                 ColumnController controller = null;
 
                 // Get the controller from this source, or its parent(s) if it doesn't have one
@@ -79,7 +81,21 @@ namespace Banshee.Collection.Gui
                 PersistentColumnController persistent_controller = controller as PersistentColumnController;
                 if (persistent_controller != null) {
                     //Hyena.Log.InformationFormat ("Setting controller source to {0}", ServiceManager.SourceManager.ActiveSource.Name);
-                    persistent_controller.Source = ServiceManager.SourceManager.ActiveSource;
+                    persistent_controller.Source = active_source;
+                }
+
+                var sort_field = active_source.Properties.Get<string> ("TrackListSortField");
+                if (sort_field != null) {
+                    var column = controller.FirstOrDefault (c => {
+                        var s = c as SortableColumn;
+                        return s != null && s.Field.Name == sort_field;
+                    }) as SortableColumn;
+
+                    if (column != null) {
+                        column.Visible = true;
+                        column.SortType = active_source.Properties.Get<bool> ("TrackListSortAscending") ? Hyena.Data.SortType.Ascending : Hyena.Data.SortType.Descending;
+                        controller.DefaultSortColumn = column;
+                    }
                 }
 
                 ColumnController = controller;
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs b/src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs
index d82efc8..2e6a09e 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/FileChooserDialog.cs
@@ -31,6 +31,7 @@ using Gtk;
 
 using Banshee.Configuration;
 using Banshee.ServiceStack;
+using Hyena;
 
 namespace Banshee.Gui.Dialogs
 {
@@ -51,9 +52,12 @@ namespace Banshee.Gui.Dialogs
             // Translators: verb
             chooser.AddButton (Mono.Unix.Catalog.GetString("I_mport"), ResponseType.Ok);
 
+            // FIXME: this dialog should be library-specific, and so these shortcuts should be
+            // library-specific too
             Hyena.Gui.GtkUtilities.SetChooserShortcuts (chooser,
                 ServiceManager.SourceManager.MusicLibrary.BaseDirectory,
-                ServiceManager.SourceManager.VideoLibrary.BaseDirectory
+                ServiceManager.SourceManager.VideoLibrary.BaseDirectory,
+                GetPhotosFolder ()
             );
 
             return chooser;
@@ -71,6 +75,33 @@ namespace Banshee.Gui.Dialogs
             WindowPosition = WindowPosition.Center;
         }
 
+        public static string GetPhotosFolder ()
+        {
+            string personal = Environment.GetFolderPath (Environment.SpecialFolder.Personal);
+            string desktop = Environment.GetFolderPath (Environment.SpecialFolder.Desktop);
+
+            var photo_folders = new string [] {
+                Environment.GetFolderPath (Environment.SpecialFolder.MyPictures),
+                Paths.Combine (desktop, "Photos"), Paths.Combine (desktop, "photos"),
+                Paths.Combine (personal, "Photos"), Paths.Combine (personal, "photos")
+            };
+
+            // Make sure we don't accidentally scan the entire home or desktop directory
+            for (int i = 0; i < photo_folders.Length; i++) {
+                if (photo_folders[i] == personal || photo_folders[i] == desktop) {
+                    photo_folders[i] = null;
+                }
+            }
+
+            foreach (string folder in photo_folders) {
+                if (folder != null && folder != personal && folder != desktop && Banshee.IO.Directory.Exists (folder)) {
+                    return folder;
+                }
+            }
+
+            return null;
+        }
+
         protected override void OnResponse (ResponseType response)
         {
             base.OnResponse (response);
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/RangeEntry.cs b/src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/RangeEntry.cs
index e2aed7a..2d8e012 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/RangeEntry.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui.TrackEditor/RangeEntry.cs
@@ -74,6 +74,8 @@ namespace Banshee.Gui.TrackEditor
 
             from_entry.ValueChanged += OnChanged;
             to_entry.ValueChanged += OnChanged;
+            from_entry.Output += OnOutput;
+            to_entry.Output += OnOutput;
         }
 
         public void SetAsReadOnly ()
@@ -82,8 +84,21 @@ namespace Banshee.Gui.TrackEditor
             to_entry.IsEditable = false;
         }
 
-        protected override bool OnMnemonicActivated (bool group_cycling) {
-            return from_entry.MnemonicActivate(group_cycling);
+        protected override bool OnMnemonicActivated (bool group_cycling)
+        {
+            return from_entry.MnemonicActivate (group_cycling);
+        }
+
+        protected void OnOutput (object o, OutputArgs args)
+        {
+            SpinButtonEntry entry = (SpinButtonEntry) o;
+
+            if (0 == entry.ValueAsInt) {
+                entry.Text = "";
+            } else {
+                entry.Text = entry.ValueAsInt.ToString ();
+            }
+            args.RetVal = 1;
         }
 
         private class AutoOrderButton : Button
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/ConnectedSeekSlider.cs b/src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/ConnectedSeekSlider.cs
index 65368fd..c5bc0a7 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/ConnectedSeekSlider.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/ConnectedSeekSlider.cs
@@ -118,7 +118,7 @@ namespace Banshee.Gui.Widgets
 
             hbox.PackStart (box, true, true, 0);
 
-            grabber = new Hyena.Widgets.GrabHandle ();
+            grabber = new Hyena.Widgets.GrabHandle () { NoShowAll = true };
             grabber.ControlWidthOf (seek_slider, 125, 1024, true);
 
             hbox.PackStart (grabber, true, true, 0);
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs
index c7944fd..4e58f24 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarkUI.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections.Generic;
 using Gtk;
 using Mono.Unix;
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarksService.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarksService.cs
index 4c93461..375685d 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarksService.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/BookmarksService.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.Collections.Generic;
 using Gtk;
 using Mono.Unix;
diff --git a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs b/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
index a3523db..cb70b28 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
@@ -60,7 +60,7 @@ namespace Banshee.Library.Gui
         }
 
         public string ImportLabel {
-            get { return Catalog.GetString ("C_hoose Files"); }
+            get { return Catalog.GetString ("C_hoose Files..."); }
         }
 
         public string [] IconNames {
diff --git a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs b/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
index cba7ed3..1cd4ee1 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
@@ -54,7 +54,7 @@ namespace Banshee.Library.Gui
         }
 
         public string ImportLabel {
-            get { return Catalog.GetString ("C_hoose Folders"); }
+            get { return Catalog.GetString ("C_hoose Folders..."); }
         }
 
         public string [] IconNames {
diff --git a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs b/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs
deleted file mode 100644
index fd87e21..0000000
--- a/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-//
-// PhotoFolderImportSource.cs
-//
-// Author:
-//   Gabriel Burt <gburt at novell.com>
-//
-// Copyright (C) 2008 Novell, Inc.
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-using System;
-using Mono.Unix;
-using Gtk;
-
-using Hyena;
-
-using Banshee.Base;
-
-namespace Banshee.Library.Gui
-{
-    public class PhotoFolderImportSource : IImportSource
-    {
-        private string [] photo_folders;
-
-        public PhotoFolderImportSource ()
-        {
-            string personal = Environment.GetFolderPath (Environment.SpecialFolder.Personal);
-            string desktop = Environment.GetFolderPath (Environment.SpecialFolder.Desktop);
-
-            photo_folders = new string [] {
-                Environment.GetFolderPath (Environment.SpecialFolder.MyPictures),
-                Paths.Combine (desktop, "Photos"), Paths.Combine (desktop, "photos"),
-                Paths.Combine (personal, "Photos"), Paths.Combine (personal, "photos")
-            };
-
-            // Make sure we don't accidentally scan the entire home or desktop directory
-            for (int i = 0; i < photo_folders.Length; i++) {
-                if (photo_folders[i] == personal || photo_folders[i] == desktop) {
-                    photo_folders[i] = null;
-                }
-            }
-        }
-
-        public void Import ()
-        {
-            Hyena.Log.DebugFormat ("Importing photo folder: {0}", PhotoFolder);
-            Banshee.ServiceStack.ServiceManager.Get<LibraryImportManager> ().Enqueue (PhotoFolder);
-        }
-
-        public string Name {
-            get { return Catalog.GetString ("Videos From Photos Folder"); }
-        }
-
-        public string ImportLabel { get { return null; } }
-
-        public string [] IconNames {
-            get { return new string [] { "gtk-open" }; }
-        }
-
-        public bool CanImport {
-            get { return PhotoFolder != null; }
-        }
-
-        private string PhotoFolder {
-            get {
-                foreach (string folder in photo_folders) {
-                    if (folder != null && Banshee.IO.Directory.Exists (folder)) {
-                        return folder;
-                    }
-                }
-                return null;
-            }
-        }
-
-        public int SortOrder {
-            get { return 13; }
-        }
-    }
-}
diff --git a/src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs b/src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs
index f41cf5a..1c5fec4 100644
--- a/src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.SmartPlaylist.Gui/Editor.cs
@@ -310,7 +310,6 @@ namespace Banshee.SmartPlaylist
                     SmartPlaylistSource pl = def.ToSmartPlaylistSource (primary_source);
                     pl.Save ();
                     pl.PrimarySource.AddChildSource (pl);
-                    pl.RefreshAndReload ();
                     //SmartPlaylistCore.Instance.StartTimer (pl);
                 }
             }
diff --git a/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceModel.cs b/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceModel.cs
index 8c729f9..2190aa9 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceModel.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceModel.cs
@@ -211,13 +211,10 @@ namespace Banshee.Sources.Gui
 
                 int position = source.Order;
 
+                var type = source is SourceManager.GroupSource ? EntryType.Group : EntryType.Source;
                 TreeIter iter = parent.Equals (TreeIter.Zero)
-                    ? InsertNode (position)
-                    : InsertNode (parent, position);
-
-                SetValue (iter, 0, source);
-                SetValue (iter, 1, source.Order);
-                SetValue (iter, 2, source is SourceManager.GroupSource ? EntryType.Group : EntryType.Source);
+                    ? InsertWithValues (position, source, source.Order, type)
+                    : InsertWithValues (parent, position, source, source.Order, type);
 
                 lock (source.Children) {
                     foreach (Source child in source.Children) {
diff --git a/src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml b/src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml
index e43c3b2..0d26a37 100644
--- a/src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml
+++ b/src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml
@@ -17,7 +17,6 @@
   
   <Extension path="/Banshee/Library/ImportSource">
     <ImportSource class="Banshee.Library.Gui.FolderImportSource"/>
-    <ImportSource class="Banshee.Library.Gui.PhotoFolderImportSource"/>
     <ImportSource class="Banshee.Library.Gui.FileImportSource"/>
   </Extension>
   
diff --git a/src/Core/Banshee.ThickClient/Makefile.am b/src/Core/Banshee.ThickClient/Makefile.am
index 32c3ca5..62b6fb5 100644
--- a/src/Core/Banshee.ThickClient/Makefile.am
+++ b/src/Core/Banshee.ThickClient/Makefile.am
@@ -129,7 +129,6 @@ SOURCES =  \
 	Banshee.Library.Gui/FileImportSource.cs \
 	Banshee.Library.Gui/FolderImportSource.cs \
 	Banshee.Library.Gui/ImportDialog.cs \
-	Banshee.Library.Gui/PhotoFolderImportSource.cs \
 	Banshee.MediaProfiles.Gui/ProfileComboBox.cs \
 	Banshee.MediaProfiles.Gui/ProfileComboBoxConfigurable.cs \
 	Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs \
diff --git a/src/Core/Banshee.ThickClient/Makefile.in b/src/Core/Banshee.ThickClient/Makefile.in
index ca11ffd..c0fa9ee 100644
--- a/src/Core/Banshee.ThickClient/Makefile.in
+++ b/src/Core/Banshee.ThickClient/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -507,7 +515,6 @@ SOURCES = \
 	Banshee.Library.Gui/FileImportSource.cs \
 	Banshee.Library.Gui/FolderImportSource.cs \
 	Banshee.Library.Gui/ImportDialog.cs \
-	Banshee.Library.Gui/PhotoFolderImportSource.cs \
 	Banshee.MediaProfiles.Gui/ProfileComboBox.cs \
 	Banshee.MediaProfiles.Gui/ProfileComboBoxConfigurable.cs \
 	Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs \
@@ -584,12 +591,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -641,7 +644,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -768,14 +771,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.ThickClient/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.ThickClient/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.ThickClient/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.ThickClient/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -793,25 +796,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -841,13 +860,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -879,6 +902,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -899,6 +923,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -906,21 +932,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -942,7 +977,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -1007,6 +1041,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.WebBrowser/Makefile.in b/src/Core/Banshee.WebBrowser/Makefile.in
index 0b6d449..6bc7de7 100644
--- a/src/Core/Banshee.WebBrowser/Makefile.in
+++ b/src/Core/Banshee.WebBrowser/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -93,10 +116,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -214,29 +265,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -271,6 +303,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -312,9 +345,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -463,12 +499,8 @@ RESOURCES = \
 @HAVE_LIBWEBKIT_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_LIBWEBKIT_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_LIBWEBKIT_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_LIBWEBKIT_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -520,7 +552,7 @@ RESOURCES = \
 
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_LIBWEBKIT_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -649,14 +681,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.WebBrowser/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.WebBrowser/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.WebBrowser/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.WebBrowser/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -674,25 +706,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -707,7 +755,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -724,7 +772,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -732,7 +780,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -758,16 +806,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -775,14 +823,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -794,7 +842,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -803,29 +851,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -846,29 +899,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -902,6 +970,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -924,6 +993,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -931,21 +1002,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -967,9 +1047,9 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-data-am install-strip uninstall-am
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-data-am install-strip tags-recursive \
+	uninstall-am
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -1035,6 +1115,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_LIBWEBKIT_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_LIBWEBKIT_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_LIBWEBKIT_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.WebBrowser/libossifer/Makefile.in b/src/Core/Banshee.WebBrowser/libossifer/Makefile.in
index c16a306..5057318 100644
--- a/src/Core/Banshee.WebBrowser/libossifer/Makefile.in
+++ b/src/Core/Banshee.WebBrowser/libossifer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -78,14 +80,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(ossiferdir)"
-ossiferLTLIBRARIES_INSTALL = $(INSTALL)
 LTLIBRARIES = $(ossifer_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 @HAVE_LIBSOUP_GNOME_TRUE@@HAVE_LIBWEBKIT_TRUE at am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
@@ -105,6 +122,7 @@ libossifer_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
+am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
@@ -235,29 +253,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -292,6 +291,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -333,9 +333,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -437,14 +440,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.WebBrowser/libossifer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.WebBrowser/libossifer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.WebBrowser/libossifer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.WebBrowser/libossifer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -462,23 +465,28 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-ossiferLTLIBRARIES: $(ossifer_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
 	test -z "$(ossiferdir)" || $(MKDIR_P) "$(DESTDIR)$(ossiferdir)"
-	@list='$(ossifer_LTLIBRARIES)'; for p in $$list; do \
+	@list='$(ossifer_LTLIBRARIES)'; test -n "$(ossiferdir)" || list=; \
+	list2=; for p in $$list; do \
 	  if test -f $$p; then \
-	    f=$(am__strip_dir) \
-	    echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(ossiferLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(ossiferdir)/$$f'"; \
-	    $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(ossiferLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(ossiferdir)/$$f"; \
+	    list2="$$list2 $$p"; \
 	  else :; fi; \
-	done
+	done; \
+	test -z "$$list2" || { \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(ossiferdir)'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(ossiferdir)"; \
+	}
 
 uninstall-ossiferLTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(ossifer_LTLIBRARIES)'; for p in $$list; do \
-	  p=$(am__strip_dir) \
-	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(ossiferdir)/$$p'"; \
-	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(ossiferdir)/$$p"; \
+	@list='$(ossifer_LTLIBRARIES)'; test -n "$(ossiferdir)" || list=; \
+	for p in $$list; do \
+	  $(am__strip_dir) \
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(ossiferdir)/$$f'"; \
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(ossiferdir)/$$f"; \
 	done
 
 clean-ossiferLTLIBRARIES:
@@ -503,38 +511,38 @@ distclean-compile:
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
 libossifer_la-ossifer-web-view.lo: ossifer-web-view.c
- at am__fastdepCC_TRUE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -MT libossifer_la-ossifer-web-view.lo -MD -MP -MF $(DEPDIR)/libossifer_la-ossifer-web-view.Tpo -c -o libossifer_la-ossifer-web-view.lo `test -f 'ossifer-web-view.c' || echo '$(srcdir)/'`ossifer-web-view.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libossifer_la-ossifer-web-view.Tpo $(DEPDIR)/libossifer_la-ossifer-web-view.Plo
+ at am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -MT libossifer_la-ossifer-web-view.lo -MD -MP -MF $(DEPDIR)/libossifer_la-ossifer-web-view.Tpo -c -o libossifer_la-ossifer-web-view.lo `test -f 'ossifer-web-view.c' || echo '$(srcdir)/'`ossifer-web-view.c
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/libossifer_la-ossifer-web-view.Tpo $(DEPDIR)/libossifer_la-ossifer-web-view.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ossifer-web-view.c' object='libossifer_la-ossifer-web-view.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -c -o libossifer_la-ossifer-web-view.lo `test -f 'ossifer-web-view.c' || echo '$(srcdir)/'`ossifer-web-view.c
+ at am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -c -o libossifer_la-ossifer-web-view.lo `test -f 'ossifer-web-view.c' || echo '$(srcdir)/'`ossifer-web-view.c
 
 libossifer_la-ossifer-session.lo: ossifer-session.c
- at am__fastdepCC_TRUE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -MT libossifer_la-ossifer-session.lo -MD -MP -MF $(DEPDIR)/libossifer_la-ossifer-session.Tpo -c -o libossifer_la-ossifer-session.lo `test -f 'ossifer-session.c' || echo '$(srcdir)/'`ossifer-session.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libossifer_la-ossifer-session.Tpo $(DEPDIR)/libossifer_la-ossifer-session.Plo
+ at am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -MT libossifer_la-ossifer-session.lo -MD -MP -MF $(DEPDIR)/libossifer_la-ossifer-session.Tpo -c -o libossifer_la-ossifer-session.lo `test -f 'ossifer-session.c' || echo '$(srcdir)/'`ossifer-session.c
+ at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/libossifer_la-ossifer-session.Tpo $(DEPDIR)/libossifer_la-ossifer-session.Plo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ossifer-session.c' object='libossifer_la-ossifer-session.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -c -o libossifer_la-ossifer-session.lo `test -f 'ossifer-session.c' || echo '$(srcdir)/'`ossifer-session.c
+ at am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libossifer_la_CFLAGS) $(CFLAGS) -c -o libossifer_la-ossifer-session.lo `test -f 'ossifer-session.c' || echo '$(srcdir)/'`ossifer-session.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -547,14 +555,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -562,29 +570,34 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -605,13 +618,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -643,6 +660,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -665,6 +683,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -673,18 +693,28 @@ install-data-am: install-ossiferLTLIBRARIES
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -729,6 +759,7 @@ uninstall-am: uninstall-ossiferLTLIBRARIES
 @HAVE_LIBWEBKIT_TRUE@$(top_builddir)/bin/libossifer.so: libossifer.la
 @HAVE_LIBWEBKIT_TRUE@	mkdir -p $(top_builddir)/bin
 @HAVE_LIBWEBKIT_TRUE@	cp -f .libs/$(notdir $@) $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Banshee.Widgets/Makefile.in b/src/Core/Banshee.Widgets/Makefile.in
index ef7a2d0..67318fa 100644
--- a/src/Core/Banshee.Widgets/Makefile.in
+++ b/src/Core/Banshee.Widgets/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -437,12 +445,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -494,7 +498,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -622,14 +626,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Banshee.Widgets/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Banshee.Widgets/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Banshee.Widgets/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Banshee.Widgets/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -647,25 +651,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -695,13 +715,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -733,6 +757,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -753,6 +778,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -760,21 +787,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -796,7 +832,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -861,6 +896,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Core/Makefile.in b/src/Core/Makefile.in
index e8c4962..129e997 100644
--- a/src/Core/Makefile.in
+++ b/src/Core/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -401,14 +417,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Core/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Core/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Core/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Core/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -426,6 +442,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -440,7 +457,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -457,7 +474,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -465,7 +482,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -491,16 +508,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -508,14 +525,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -527,7 +544,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -536,29 +553,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -579,29 +601,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -631,6 +668,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -650,6 +688,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -658,18 +698,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -690,8 +740,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -712,6 +762,7 @@ run:
 	@pushd $(top_builddir); \
 	make run; \
 	popd;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap.AppleDevice/Makefile.in b/src/Dap/Banshee.Dap.AppleDevice/Makefile.in
index 32f370e..0bec2e2 100644
--- a/src/Dap/Banshee.Dap.AppleDevice/Makefile.in
+++ b/src/Dap/Banshee.Dap.AppleDevice/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ EXTRA_BUNDLE = $(LIBGPODSHARP_ASSEMBLIES)
 @ENABLE_APPLEDEVICE_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_APPLEDEVICE_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_APPLEDEVICE_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_APPLEDEVICE_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_APPLEDEVICE_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_APPLEDEVICE_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_APPLEDEVICE_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_APPLEDEVICE_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ EXTRA_BUNDLE = $(LIBGPODSHARP_ASSEMBLIES)
 
 @ENABLE_APPLEDEVICE_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_APPLEDEVICE_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_APPLEDEVICE_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_APPLEDEVICE_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_APPLEDEVICE_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_APPLEDEVICE_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_APPLEDEVICE_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.AppleDevice/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.AppleDevice/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.AppleDevice/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.AppleDevice/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -742,6 +767,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -749,21 +776,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -785,7 +821,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -862,6 +897,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_APPLEDEVICE_TRUE@		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
 @ENABLE_APPLEDEVICE_TRUE@	done;
 @ENABLE_APPLEDEVICE_TRUE at endef
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap.Ipod/Makefile.in b/src/Dap/Banshee.Dap.Ipod/Makefile.in
index 33c12f0..e7a1ec1 100644
--- a/src/Dap/Banshee.Dap.Ipod/Makefile.in
+++ b/src/Dap/Banshee.Dap.Ipod/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -427,12 +435,8 @@ EXTRA_BUNDLE = $(IPODSHARP_ASSEMBLIES)
 @ENABLE_IPOD_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_IPOD_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_IPOD_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_IPOD_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_IPOD_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_IPOD_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_IPOD_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_IPOD_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -484,7 +488,7 @@ EXTRA_BUNDLE = $(IPODSHARP_ASSEMBLIES)
 
 @ENABLE_IPOD_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_IPOD_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_IPOD_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_IPOD_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_IPOD_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_IPOD_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_IPOD_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -612,14 +616,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Ipod/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Ipod/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Ipod/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Ipod/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -637,25 +641,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -685,13 +705,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -723,6 +747,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -745,6 +770,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -752,21 +779,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -788,7 +824,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -865,6 +900,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_IPOD_TRUE@		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
 @ENABLE_IPOD_TRUE@	done;
 @ENABLE_IPOD_TRUE at endef
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap.Karma/Makefile.in b/src/Dap/Banshee.Dap.Karma/Makefile.in
index db668af..4b9f8dc 100644
--- a/src/Dap/Banshee.Dap.Karma/Makefile.in
+++ b/src/Dap/Banshee.Dap.Karma/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ EXTRA_BUNDLE = $(KARMASHARP_ASSEMBLIES)
 @ENABLE_KARMA_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_KARMA_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_KARMA_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_KARMA_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_KARMA_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_KARMA_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_KARMA_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_KARMA_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ EXTRA_BUNDLE = $(KARMASHARP_ASSEMBLIES)
 
 @ENABLE_KARMA_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_KARMA_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_KARMA_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_KARMA_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_KARMA_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_KARMA_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_KARMA_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Karma/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Karma/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Karma/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Karma/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -861,6 +896,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_KARMA_TRUE@		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
 @ENABLE_KARMA_TRUE@	done;
 @ENABLE_KARMA_TRUE at endef
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap.MassStorage/Makefile.in b/src/Dap/Banshee.Dap.MassStorage/Makefile.in
index b2e6589..b1e40b5 100644
--- a/src/Dap/Banshee.Dap.MassStorage/Makefile.in
+++ b/src/Dap/Banshee.Dap.MassStorage/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -429,12 +437,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -486,7 +490,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -613,14 +617,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.MassStorage/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.MassStorage/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.MassStorage/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.MassStorage/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -638,25 +642,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -686,13 +706,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -724,6 +748,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -744,6 +769,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -751,21 +778,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -787,7 +823,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -852,6 +887,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap.Mtp/Makefile.in b/src/Dap/Banshee.Dap.Mtp/Makefile.in
index b0486aa..ef8234c 100644
--- a/src/Dap/Banshee.Dap.Mtp/Makefile.in
+++ b/src/Dap/Banshee.Dap.Mtp/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ RESOURCES = Banshee.Dap.Mtp.addin.xml
 @ENABLE_MTP_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_MTP_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_MTP_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_MTP_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_MTP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_MTP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_MTP_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_MTP_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ RESOURCES = Banshee.Dap.Mtp.addin.xml
 
 @ENABLE_MTP_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_MTP_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_MTP_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_MTP_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_MTP_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_MTP_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_MTP_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Mtp/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap.Mtp/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Mtp/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap.Mtp/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -849,6 +884,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_MTP_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_MTP_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_MTP_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Banshee.Dap/Makefile.in b/src/Dap/Banshee.Dap/Makefile.in
index 73af800..bcffa4b 100644
--- a/src/Dap/Banshee.Dap/Makefile.in
+++ b/src/Dap/Banshee.Dap/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -445,12 +453,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -502,7 +506,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -629,14 +633,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Banshee.Dap/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Banshee.Dap/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Banshee.Dap/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -654,25 +658,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -702,13 +722,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -740,6 +764,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -760,6 +785,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -767,21 +794,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -803,7 +839,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -868,6 +903,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Dap/Makefile.in b/src/Dap/Makefile.in
index 8340a67..766eb36 100644
--- a/src/Dap/Makefile.in
+++ b/src/Dap/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -401,14 +417,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Dap/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Dap/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Dap/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Dap/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -426,6 +442,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -440,7 +457,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -457,7 +474,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -465,7 +482,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -491,16 +508,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -508,14 +525,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -527,7 +544,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -536,29 +553,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -579,29 +601,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -631,6 +668,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -650,6 +688,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -658,18 +698,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -690,8 +740,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -712,6 +762,7 @@ run:
 	@pushd $(top_builddir); \
 	make run; \
 	popd;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.AmazonMp3.Store/Makefile.in b/src/Extensions/Banshee.AmazonMp3.Store/Makefile.in
index 5c07d26..4bf6fc7 100644
--- a/src/Extensions/Banshee.AmazonMp3.Store/Makefile.in
+++ b/src/Extensions/Banshee.AmazonMp3.Store/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ RESOURCES = Banshee.AmazonMp3.Store.addin.xml
 @HAVE_LIBWEBKIT_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_LIBWEBKIT_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_LIBWEBKIT_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_LIBWEBKIT_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ RESOURCES = Banshee.AmazonMp3.Store.addin.xml
 
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_LIBWEBKIT_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -614,14 +618,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.AmazonMp3.Store/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.AmazonMp3.Store/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.AmazonMp3.Store/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.AmazonMp3.Store/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -639,25 +643,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -687,13 +707,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -725,6 +749,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -747,6 +772,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -754,21 +781,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -790,7 +826,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -855,6 +890,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_LIBWEBKIT_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_LIBWEBKIT_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_LIBWEBKIT_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/16x16/categories/amazon-mp3-store-source.png b/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/16x16/categories/amazon-mp3-store-source.png
deleted file mode 100644
index 508af88..0000000
Binary files a/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/16x16/categories/amazon-mp3-store-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/22x22/categories/amazon-mp3-store-source.png b/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/22x22/categories/amazon-mp3-store-source.png
deleted file mode 100644
index b8f70a6..0000000
Binary files a/src/Extensions/Banshee.AmazonMp3.Store/ThemeIcons/22x22/categories/amazon-mp3-store-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.AmazonMp3/Makefile.in b/src/Extensions/Banshee.AmazonMp3/Makefile.in
index 4fcafba..a308555 100644
--- a/src/Extensions/Banshee.AmazonMp3/Makefile.in
+++ b/src/Extensions/Banshee.AmazonMp3/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -17,8 +18,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,19 +83,32 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
-am__installdirs = "$(DESTDIR)$(bamzdir)" "$(DESTDIR)$(moduledir)" \
-	"$(DESTDIR)$(mimedir)"
-bamzSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-SCRIPTS = $(bamz_SCRIPTS) $(module_SCRIPTS)
-DIST_SOURCES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-mimeDATA_INSTALL = $(INSTALL_DATA)
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(bamzdir)" "$(DESTDIR)$(moduledir)" \
+	"$(DESTDIR)$(mimedir)"
+SCRIPTS = $(bamz_SCRIPTS) $(module_SCRIPTS)
+DIST_SOURCES =
 DATA = $(mime_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -213,29 +228,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -270,6 +266,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -311,9 +308,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -441,12 +441,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -498,7 +494,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -626,14 +622,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.AmazonMp3/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.AmazonMp3/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.AmazonMp3/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.AmazonMp3/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -651,44 +647,75 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-bamzSCRIPTS: $(bamz_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(bamzdir)" || $(MKDIR_P) "$(DESTDIR)$(bamzdir)"
-	@list='$(bamz_SCRIPTS)'; for p in $$list; do \
+	@list='$(bamz_SCRIPTS)'; test -n "$(bamzdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(bamzSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bamzdir)/$$f'"; \
-	    $(bamzSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bamzdir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bamzdir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bamzdir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-bamzSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(bamz_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(bamzdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(bamzdir)/$$f"; \
-	done
+	@list='$(bamz_SCRIPTS)'; test -n "$(bamzdir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bamzdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bamzdir)" && rm -f $$files
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -698,20 +725,23 @@ clean-libtool:
 install-mimeDATA: $(mime_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(mimedir)" || $(MKDIR_P) "$(DESTDIR)$(mimedir)"
-	@list='$(mime_DATA)'; for p in $$list; do \
+	@list='$(mime_DATA)'; test -n "$(mimedir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(mimeDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(mimedir)/$$f'"; \
-	  $(mimeDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(mimedir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(mimedir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(mimedir)" || exit $$?; \
 	done
 
 uninstall-mimeDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(mime_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(mimedir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(mimedir)/$$f"; \
-	done
+	@list='$(mime_DATA)'; test -n "$(mimedir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(mimedir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(mimedir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -735,13 +765,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -773,6 +807,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -793,6 +828,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -801,21 +838,30 @@ install-data-am: install-bamzSCRIPTS install-mimeDATA \
 	install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -838,7 +884,6 @@ uninstall-am: uninstall-bamzSCRIPTS uninstall-mimeDATA \
 	uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -907,6 +952,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs b/src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs
index 2466b60..5b99ba8 100644
--- a/src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs
+++ b/src/Extensions/Banshee.AudioCd/Banshee.AudioCd/AudioCdSource.cs
@@ -128,7 +128,7 @@ namespace Banshee.AudioCd
             query_message.FreezeNotify ();
             query_message.CanClose = false;
             query_message.IsSpinning = true;
-            query_message.Text = Catalog.GetString ("Searching for CD metadata...");
+            query_message.Text = Catalog.GetString ("Searching for track information...");
             query_message.ThawNotify ();
 
             PushMessage (query_message);
@@ -161,7 +161,7 @@ namespace Banshee.AudioCd
             query_message.FreezeNotify ();
             query_message.IsSpinning = false;
             query_message.SetIconName ("dialog-error");
-            query_message.Text = Catalog.GetString ("Could not fetch metadata for CD.");
+            query_message.Text = Catalog.GetString ("Could not fetch track information");
             query_message.CanClose = true;
             query_message.ThawNotify ();
         }
diff --git a/src/Extensions/Banshee.AudioCd/Makefile.in b/src/Extensions/Banshee.AudioCd/Makefile.in
index 2664acc..af61cd6 100644
--- a/src/Extensions/Banshee.AudioCd/Makefile.in
+++ b/src/Extensions/Banshee.AudioCd/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -430,12 +438,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -487,7 +491,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -614,14 +618,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.AudioCd/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.AudioCd/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.AudioCd/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.AudioCd/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -639,25 +643,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -687,13 +707,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -725,6 +749,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -745,6 +770,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -752,21 +779,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -788,7 +824,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -853,6 +888,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs b/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs
index c08d586..06388e9 100644
--- a/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs
+++ b/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/AudiobookLibrarySource.cs
@@ -65,7 +65,7 @@ namespace Banshee.Audiobook
 
         public Actions Actions { get; private set; }
 
-        public AudiobookLibrarySource () : base (Catalog.GetString ("Audiobooks, etc"), "AudiobookLibrary", 49)
+        public AudiobookLibrarySource () : base (Catalog.GetString ("Audiobooks"), "AudiobookLibrary", 49)
         {
             MediaTypes = TrackMediaAttributes.AudioBook;
             NotMediaTypes = TrackMediaAttributes.Podcast | TrackMediaAttributes.VideoStream | TrackMediaAttributes.Music;
diff --git a/src/Extensions/Banshee.Audiobook/Makefile.in b/src/Extensions/Banshee.Audiobook/Makefile.in
index a636f31..754ae34 100644
--- a/src/Extensions/Banshee.Audiobook/Makefile.in
+++ b/src/Extensions/Banshee.Audiobook/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -433,12 +441,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -490,7 +494,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -617,14 +621,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Audiobook/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Audiobook/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Audiobook/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Audiobook/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -642,25 +646,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -690,13 +710,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -728,6 +752,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -748,6 +773,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -755,21 +782,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -791,7 +827,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -856,6 +891,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.BooScript/Makefile.in b/src/Extensions/Banshee.BooScript/Makefile.in
index 74687c3..f972cab 100644
--- a/src/Extensions/Banshee.BooScript/Makefile.in
+++ b/src/Extensions/Banshee.BooScript/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ RESOURCES = \
 @HAVE_BOO_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_BOO_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_BOO_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_BOO_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_BOO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_BOO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_BOO_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_BOO_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ RESOURCES = \
 
 @HAVE_BOO_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_BOO_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_BOO_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_BOO_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_BOO_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_BOO_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_BOO_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.BooScript/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.BooScript/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.BooScript/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.BooScript/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -742,6 +767,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -749,21 +776,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -785,7 +821,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -850,6 +885,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_BOO_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_BOO_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_BOO_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs b/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs
index 2d7797e..9156078 100644
--- a/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs
+++ b/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmEntry.cs
@@ -85,6 +85,7 @@ namespace Banshee.Bpm
             bpm_entry.Digits = 0;
             bpm_entry.Numeric = true;
             bpm_entry.ValueChanged += OnChanged;
+            bpm_entry.Output += OnOutput;
             Add (bpm_entry);
 
             if (detector != null) {
@@ -135,8 +136,9 @@ namespace Banshee.Bpm
             set { bpm_entry.Value = value; }
         }
 
-        protected override bool OnMnemonicActivated (bool group_cycling) {
-            return bpm_entry.MnemonicActivate(group_cycling);
+        protected override bool OnMnemonicActivated (bool group_cycling)
+        {
+            return bpm_entry.MnemonicActivate (group_cycling);
         }
 
         private void OnChanged (object o, EventArgs args)
@@ -185,5 +187,17 @@ namespace Banshee.Bpm
                 (actions["StopWhenFinishedAction"] as Gtk.ToggleAction).Active = true;
             }
         }
+
+        private void OnOutput (object o, OutputArgs args)
+        {
+            SpinButton entry = (SpinButton) o;
+
+            if (0 == entry.ValueAsInt) {
+                entry.Text = "";
+            } else {
+                entry.Text = entry.ValueAsInt.ToString ();
+            }
+            args.RetVal = 1;
+        }
     }
 }
diff --git a/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs b/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs
index b8cfa52..f6a59e0 100644
--- a/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs
+++ b/src/Extensions/Banshee.Bpm/Banshee.Bpm/BpmService.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 
 using Mono.Unix;
 
diff --git a/src/Extensions/Banshee.Bpm/Makefile.in b/src/Extensions/Banshee.Bpm/Makefile.in
index 03969c1..a2fc370 100644
--- a/src/Extensions/Banshee.Bpm/Makefile.in
+++ b/src/Extensions/Banshee.Bpm/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -425,12 +433,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -482,7 +486,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Bpm/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Bpm/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Bpm/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Bpm/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -740,6 +765,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -747,21 +774,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -783,7 +819,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -848,6 +883,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtService.cs b/src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtService.cs
index d36986b..4791425 100644
--- a/src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtService.cs
+++ b/src/Extensions/Banshee.CoverArt/Banshee.CoverArt/CoverArtService.cs
@@ -28,7 +28,7 @@
 //
 
 using System;
-using System.Data;
+
 using Gtk;
 using Mono.Unix;
 
diff --git a/src/Extensions/Banshee.CoverArt/Makefile.in b/src/Extensions/Banshee.CoverArt/Makefile.in
index 33d9c69..db52ab8 100644
--- a/src/Extensions/Banshee.CoverArt/Makefile.in
+++ b/src/Extensions/Banshee.CoverArt/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -422,12 +430,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -479,7 +483,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -606,14 +610,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.CoverArt/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.CoverArt/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.CoverArt/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.CoverArt/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -631,25 +635,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -679,13 +699,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -717,6 +741,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -737,6 +762,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -744,21 +771,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -780,7 +816,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -845,6 +880,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs b/src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs
index 97dab26..9493d95 100644
--- a/src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs
+++ b/src/Extensions/Banshee.Daap/Banshee.Daap/DaapService.cs
@@ -53,6 +53,8 @@ namespace Banshee.Daap
         private DaapContainerSource container;
         private Dictionary<string, DaapSource> source_map;
 
+        private uint actions_id;
+
         internal static DaapProxyWebServer ProxyServer {
             get { return proxy_server; }
         }
@@ -75,6 +77,12 @@ namespace Banshee.Daap
                 proxy_server = null;
             }
 
+            var uia_service = ServiceManager.Get<InterfaceActionService> ();
+            if (uia_service != null) {
+                uia_service.UIManager.RemoveUi (actions_id);
+                uia_service.GlobalActions.Remove ("AddRemoteDaapServerAction");
+            }
+
             // Dispose any remaining child sources
             if (source_map != null) {
                 foreach (KeyValuePair <string, DaapSource> kv in source_map) {
@@ -173,13 +181,15 @@ namespace Banshee.Daap
             }
 
             var uia_service = ServiceManager.Get<InterfaceActionService> ();
-            uia_service.GlobalActions.Add (
-                new ActionEntry ("AddRemoteDaapServerAction", Stock.Add,
-                    Catalog.GetString ("Add Remote DAAP Server"), null,
-                    Catalog.GetString ("Add a new remote DAAP server"),
-                    OnAddRemoteServer)
-            );
-            uia_service.UIManager.AddUiFromResource ("GlobalUI.xml");
+            if (uia_service != null) {
+                uia_service.GlobalActions.Add (
+                    new ActionEntry ("AddRemoteDaapServerAction", Stock.Add,
+                        Catalog.GetString ("Add Remote DAAP Server"), null,
+                        Catalog.GetString ("Add a new remote DAAP server"),
+                        OnAddRemoteServer)
+                );
+                actions_id = uia_service.UIManager.AddUiFromResource ("GlobalUI.xml");
+            }
         }
 
         private void OnAddRemoteServer (object o, EventArgs args)
diff --git a/src/Extensions/Banshee.Daap/Makefile.in b/src/Extensions/Banshee.Daap/Makefile.in
index 8ae1729..783735c 100644
--- a/src/Extensions/Banshee.Daap/Makefile.in
+++ b/src/Extensions/Banshee.Daap/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -450,12 +458,8 @@ RESOURCES = \
 @DAAP_ENABLED_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @DAAP_ENABLED_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at DAAP_ENABLED_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at DAAP_ENABLED_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at DAAP_ENABLED_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at DAAP_ENABLED_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @DAAP_ENABLED_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @DAAP_ENABLED_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -507,7 +511,7 @@ RESOURCES = \
 
 @DAAP_ENABLED_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @DAAP_ENABLED_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at DAAP_ENABLED_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at DAAP_ENABLED_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @DAAP_ENABLED_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @DAAP_ENABLED_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @DAAP_ENABLED_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -635,14 +639,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Daap/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Daap/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Daap/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Daap/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -660,25 +664,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -708,13 +728,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -746,6 +770,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -768,6 +793,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -775,21 +802,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -811,7 +847,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -876,6 +911,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @DAAP_ENABLED_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @DAAP_ENABLED_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @DAAP_ENABLED_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs b/src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs
index 3f1cf60..6752911 100644
--- a/src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs
+++ b/src/Extensions/Banshee.Emusic/Banshee.Emusic/EmusicImport.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.IO;
 using System.Xml;
 using System.Collections.Generic;
diff --git a/src/Extensions/Banshee.Emusic/Makefile.in b/src/Extensions/Banshee.Emusic/Makefile.in
index 9b0340c..7b65426 100644
--- a/src/Extensions/Banshee.Emusic/Makefile.in
+++ b/src/Extensions/Banshee.Emusic/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Emusic/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Emusic/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Emusic/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Emusic/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -739,6 +764,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -746,21 +773,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -782,7 +818,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -847,6 +882,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.FileSystemQueue/Makefile.in b/src/Extensions/Banshee.FileSystemQueue/Makefile.in
index f14ab9b..521eb50 100644
--- a/src/Extensions/Banshee.FileSystemQueue/Makefile.in
+++ b/src/Extensions/Banshee.FileSystemQueue/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -607,14 +611,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.FileSystemQueue/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.FileSystemQueue/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.FileSystemQueue/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.FileSystemQueue/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -632,25 +636,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -680,13 +700,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -718,6 +742,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -738,6 +763,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -745,21 +772,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -781,7 +817,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -846,6 +881,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Fixup/Makefile.in b/src/Extensions/Banshee.Fixup/Makefile.in
index eb2599b..00ac2f2 100644
--- a/src/Extensions/Banshee.Fixup/Makefile.in
+++ b/src/Extensions/Banshee.Fixup/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -435,12 +443,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -492,7 +496,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -619,14 +623,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Fixup/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Fixup/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Fixup/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Fixup/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -644,25 +648,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -692,13 +712,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -730,6 +754,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -750,6 +775,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -757,21 +784,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -793,7 +829,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -858,6 +893,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.InternetArchive/Makefile.in b/src/Extensions/Banshee.InternetArchive/Makefile.in
index 2c59d05..dd24bb4 100644
--- a/src/Extensions/Banshee.InternetArchive/Makefile.in
+++ b/src/Extensions/Banshee.InternetArchive/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -448,12 +456,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -505,7 +509,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -632,14 +636,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.InternetArchive/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.InternetArchive/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.InternetArchive/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.InternetArchive/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -657,25 +661,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -705,13 +725,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -743,6 +767,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -763,6 +788,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -770,21 +797,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -806,7 +842,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -871,6 +906,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.InternetRadio/Makefile.in b/src/Extensions/Banshee.InternetRadio/Makefile.in
index 8b9e193..2d9a965 100644
--- a/src/Extensions/Banshee.InternetRadio/Makefile.in
+++ b/src/Extensions/Banshee.InternetRadio/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -428,12 +436,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -485,7 +489,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -612,14 +616,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.InternetRadio/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.InternetRadio/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.InternetRadio/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.InternetRadio/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -637,25 +641,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -685,13 +705,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -723,6 +747,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -743,6 +768,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -750,21 +777,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -786,7 +822,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -851,6 +886,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Lastfm/Makefile.in b/src/Extensions/Banshee.Lastfm/Makefile.in
index 9b08475..f2935a3 100644
--- a/src/Extensions/Banshee.Lastfm/Makefile.in
+++ b/src/Extensions/Banshee.Lastfm/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -436,12 +444,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -493,7 +497,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -620,14 +624,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Lastfm/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Lastfm/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Lastfm/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Lastfm/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -645,25 +649,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -693,13 +713,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -731,6 +755,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -751,6 +776,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -758,21 +785,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -794,7 +830,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -859,6 +894,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs b/src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs
index 270208b..bdec5d4 100644
--- a/src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs
+++ b/src/Extensions/Banshee.LastfmStreaming/Banshee.LastfmStreaming/StationSource.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.IO;
 using System.Text.RegularExpressions;
 using System.Collections.Generic;
diff --git a/src/Extensions/Banshee.LastfmStreaming/Makefile.in b/src/Extensions/Banshee.LastfmStreaming/Makefile.in
index f3e03d5..b79309a 100644
--- a/src/Extensions/Banshee.LastfmStreaming/Makefile.in
+++ b/src/Extensions/Banshee.LastfmStreaming/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -431,12 +439,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -488,7 +492,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -615,14 +619,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.LastfmStreaming/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.LastfmStreaming/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.LastfmStreaming/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.LastfmStreaming/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -640,25 +644,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -688,13 +708,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -726,6 +750,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -746,6 +771,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -753,21 +780,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -789,7 +825,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -854,6 +889,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.LibraryWatcher/Banshee.LibraryWatcher/SourceWatcher.cs b/src/Extensions/Banshee.LibraryWatcher/Banshee.LibraryWatcher/SourceWatcher.cs
index ab54090..e36a2cc 100644
--- a/src/Extensions/Banshee.LibraryWatcher/Banshee.LibraryWatcher/SourceWatcher.cs
+++ b/src/Extensions/Banshee.LibraryWatcher/Banshee.LibraryWatcher/SourceWatcher.cs
@@ -31,7 +31,6 @@
 using System;
 using System.IO;
 using System.Linq;
-using System.Data;
 using System.Threading;
 using System.Collections.Generic;
 
diff --git a/src/Extensions/Banshee.LibraryWatcher/Makefile.in b/src/Extensions/Banshee.LibraryWatcher/Makefile.in
index fa73245..0c011da 100644
--- a/src/Extensions/Banshee.LibraryWatcher/Makefile.in
+++ b/src/Extensions/Banshee.LibraryWatcher/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -422,12 +430,8 @@ RESOURCES = Banshee.LibraryWatcher.addin.xml
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_LIBRARY_WATCHER_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_LIBRARY_WATCHER_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_LIBRARY_WATCHER_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_LIBRARY_WATCHER_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_LIBRARY_WATCHER_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -479,7 +483,7 @@ RESOURCES = Banshee.LibraryWatcher.addin.xml
 
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_LIBRARY_WATCHER_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_LIBRARY_WATCHER_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_LIBRARY_WATCHER_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_LIBRARY_WATCHER_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.LibraryWatcher/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.LibraryWatcher/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.LibraryWatcher/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.LibraryWatcher/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -849,6 +884,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_LIBRARY_WATCHER_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_LIBRARY_WATCHER_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_LIBRARY_WATCHER_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.MeeGo/Makefile.in b/src/Extensions/Banshee.MeeGo/Makefile.in
index 5ae4ce9..04c20e7 100644
--- a/src/Extensions/Banshee.MeeGo/Makefile.in
+++ b/src/Extensions/Banshee.MeeGo/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -17,8 +18,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,20 +83,32 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
-am__installdirs = "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(paneldir)" \
-	"$(DESTDIR)$(desktopfilesdir)" "$(DESTDIR)$(servicedir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-panelSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-SCRIPTS = $(module_SCRIPTS) $(panel_SCRIPTS)
-DIST_SOURCES =
+CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-desktopfilesDATA_INSTALL = $(INSTALL_DATA)
-serviceDATA_INSTALL = $(INSTALL_DATA)
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(paneldir)" \
+	"$(DESTDIR)$(desktopfilesdir)" "$(DESTDIR)$(servicedir)"
+SCRIPTS = $(module_SCRIPTS) $(panel_SCRIPTS)
+DIST_SOURCES =
 DATA = $(desktopfiles_DATA) $(service_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -214,29 +228,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -271,6 +266,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -312,9 +308,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -446,12 +445,8 @@ RESOURCES = Banshee.MeeGo.addin.xml
 @HAVE_MEEGO_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_MEEGO_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_MEEGO_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_MEEGO_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_MEEGO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_MEEGO_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_MEEGO_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_MEEGO_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -503,7 +498,7 @@ RESOURCES = Banshee.MeeGo.addin.xml
 
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_MEEGO_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_MEEGO_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_MEEGO_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_MEEGO_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -647,14 +642,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.MeeGo/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.MeeGo/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.MeeGo/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.MeeGo/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -672,44 +667,75 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 install-panelSCRIPTS: $(panel_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(paneldir)" || $(MKDIR_P) "$(DESTDIR)$(paneldir)"
-	@list='$(panel_SCRIPTS)'; for p in $$list; do \
+	@list='$(panel_SCRIPTS)'; test -n "$(paneldir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(panelSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(paneldir)/$$f'"; \
-	    $(panelSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(paneldir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(paneldir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(paneldir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-panelSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(panel_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(paneldir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(paneldir)/$$f"; \
-	done
+	@list='$(panel_SCRIPTS)'; test -n "$(paneldir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(paneldir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(paneldir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -719,37 +745,43 @@ clean-libtool:
 install-desktopfilesDATA: $(desktopfiles_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(desktopfilesdir)" || $(MKDIR_P) "$(DESTDIR)$(desktopfilesdir)"
-	@list='$(desktopfiles_DATA)'; for p in $$list; do \
+	@list='$(desktopfiles_DATA)'; test -n "$(desktopfilesdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(desktopfilesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(desktopfilesdir)/$$f'"; \
-	  $(desktopfilesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(desktopfilesdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopfilesdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopfilesdir)" || exit $$?; \
 	done
 
 uninstall-desktopfilesDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(desktopfiles_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(desktopfilesdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(desktopfilesdir)/$$f"; \
-	done
+	@list='$(desktopfiles_DATA)'; test -n "$(desktopfilesdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(desktopfilesdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(desktopfilesdir)" && rm -f $$files
 install-serviceDATA: $(service_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(servicedir)" || $(MKDIR_P) "$(DESTDIR)$(servicedir)"
-	@list='$(service_DATA)'; for p in $$list; do \
+	@list='$(service_DATA)'; test -n "$(servicedir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(serviceDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(servicedir)/$$f'"; \
-	  $(serviceDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(servicedir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(servicedir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(servicedir)" || exit $$?; \
 	done
 
 uninstall-serviceDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(service_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(servicedir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(servicedir)/$$f"; \
-	done
+	@list='$(service_DATA)'; test -n "$(servicedir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(servicedir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(servicedir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -773,13 +805,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -811,6 +847,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -834,6 +871,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -842,21 +881,30 @@ install-data-am: install-desktopfilesDATA install-moduleSCRIPTS \
 	install-panelSCRIPTS install-serviceDATA
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -879,7 +927,6 @@ uninstall-am: uninstall-desktopfilesDATA uninstall-moduleSCRIPTS \
 	uninstall-panelSCRIPTS uninstall-serviceDATA
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -960,6 +1007,7 @@ uninstall-am: uninstall-desktopfilesDATA uninstall-moduleSCRIPTS \
 @HAVE_MEEGO_TRUE@	rm -f com.meego.UX.Shell.Panels.banshee.service \
 @HAVE_MEEGO_TRUE@		meego-panel-banshee.desktop \
 @HAVE_MEEGO_TRUE@		meego-panel-banshee.desktop.in
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.MiniMode/Makefile.in b/src/Extensions/Banshee.MiniMode/Makefile.in
index 8f94bf2..e64608c 100644
--- a/src/Extensions/Banshee.MiniMode/Makefile.in
+++ b/src/Extensions/Banshee.MiniMode/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -607,14 +611,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.MiniMode/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.MiniMode/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.MiniMode/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.MiniMode/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -632,25 +636,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -680,13 +700,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -718,6 +742,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -738,6 +763,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -745,21 +772,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -781,7 +817,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -846,6 +881,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.MiroGuide/Makefile.in b/src/Extensions/Banshee.MiroGuide/Makefile.in
index 0cd676a..7c83c8f 100644
--- a/src/Extensions/Banshee.MiroGuide/Makefile.in
+++ b/src/Extensions/Banshee.MiroGuide/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -423,12 +431,8 @@ RESOURCES = Banshee.MiroGuide.addin.xml
 @HAVE_LIBWEBKIT_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_LIBWEBKIT_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_LIBWEBKIT_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_LIBWEBKIT_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -480,7 +484,7 @@ RESOURCES = Banshee.MiroGuide.addin.xml
 
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_LIBWEBKIT_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.MiroGuide/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.MiroGuide/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.MiroGuide/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.MiroGuide/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -742,6 +767,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -749,21 +776,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -785,7 +821,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -850,6 +885,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_LIBWEBKIT_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_LIBWEBKIT_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_LIBWEBKIT_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/16x16/categories/miro-guide-source.png b/src/Extensions/Banshee.MiroGuide/ThemeIcons/16x16/categories/miro-guide-source.png
deleted file mode 100644
index 4376ecd..0000000
Binary files a/src/Extensions/Banshee.MiroGuide/ThemeIcons/16x16/categories/miro-guide-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/22x22/categories/miro-guide-source.png b/src/Extensions/Banshee.MiroGuide/ThemeIcons/22x22/categories/miro-guide-source.png
deleted file mode 100644
index 2afc56e..0000000
Binary files a/src/Extensions/Banshee.MiroGuide/ThemeIcons/22x22/categories/miro-guide-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/24x24/categories/miro-guide-source.png b/src/Extensions/Banshee.MiroGuide/ThemeIcons/24x24/categories/miro-guide-source.png
deleted file mode 100644
index 1f870c4..0000000
Binary files a/src/Extensions/Banshee.MiroGuide/ThemeIcons/24x24/categories/miro-guide-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/32x32/categories/miro-guide-source.png b/src/Extensions/Banshee.MiroGuide/ThemeIcons/32x32/categories/miro-guide-source.png
deleted file mode 100644
index 6e5654d..0000000
Binary files a/src/Extensions/Banshee.MiroGuide/ThemeIcons/32x32/categories/miro-guide-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/48x48/categories/miro-guide-source.png b/src/Extensions/Banshee.MiroGuide/ThemeIcons/48x48/categories/miro-guide-source.png
deleted file mode 100644
index 3fcbb09..0000000
Binary files a/src/Extensions/Banshee.MiroGuide/ThemeIcons/48x48/categories/miro-guide-source.png and /dev/null differ
diff --git a/src/Extensions/Banshee.MiroGuide/ThemeIcons/scalable/categories/miro-guide-source.svg b/src/Extensions/Banshee.MiroGuide/ThemeIcons/scalable/categories/miro-guide-source.svg
deleted file mode 100644
index be1c328..0000000
--- a/src/Extensions/Banshee.MiroGuide/ThemeIcons/scalable/categories/miro-guide-source.svg
+++ /dev/null
@@ -1,188 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.0"
-   width="48"
-   height="48"
-   id="svg3266"
-   sodipodi:version="0.32"
-   inkscape:version="0.46"
-   sodipodi:docname="miro.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <metadata
-     id="metadata33">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     inkscape:window-height="794"
-     inkscape:window-width="1440"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     showgrid="false"
-     inkscape:zoom="6.8648283"
-     inkscape:cx="-9.6420969"
-     inkscape:cy="24"
-     inkscape:window-x="0"
-     inkscape:window-y="24"
-     inkscape:current-layer="svg3266" />
-  <defs
-     id="defs3268">
-    <linearGradient
-       id="linearGradient8838">
-      <stop
-         id="stop8840"
-         style="stop-color:#000000;stop-opacity:1"
-         offset="0" />
-      <stop
-         id="stop8842"
-         style="stop-color:#000000;stop-opacity:0"
-         offset="1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2490">
-      <stop
-         id="stop2492"
-         style="stop-color:#791235;stop-opacity:1"
-         offset="0" />
-      <stop
-         id="stop2494"
-         style="stop-color:#dd3b27;stop-opacity:1"
-         offset="1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient3242">
-      <stop
-         id="stop3244"
-         style="stop-color:#f8b17e;stop-opacity:1"
-         offset="0" />
-      <stop
-         id="stop3246"
-         style="stop-color:#e35d4f;stop-opacity:1"
-         offset="0.26238" />
-      <stop
-         id="stop3248"
-         style="stop-color:#c6262e;stop-opacity:1"
-         offset="0.66093999" />
-      <stop
-         id="stop3250"
-         style="stop-color:#690b54;stop-opacity:1"
-         offset="1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient3202">
-      <stop
-         id="stop3204"
-         style="stop-color:#ffffff;stop-opacity:1"
-         offset="0" />
-      <stop
-         id="stop3206"
-         style="stop-color:#d3eefc;stop-opacity:1"
-         offset="1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient3230">
-      <stop
-         id="stop3232"
-         style="stop-color:#ffffff;stop-opacity:1"
-         offset="0" />
-      <stop
-         id="stop3234"
-         style="stop-color:#ffffff;stop-opacity:0"
-         offset="1" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3230"
-       id="linearGradient2408"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(0,0.9999998)"
-       x1="26.153599"
-       y1="4.9999995"
-       x2="26.153599"
-       y2="44.233311" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3202"
-       id="linearGradient2411"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.0395395,0,0,0.9504295,2.4213254,1.5862551)"
-       x1="22.885227"
-       y1="17.628952"
-       x2="22.885227"
-       y2="30.889549" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3242"
-       id="radialGradient2415"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0,1.6958206,-1.7757718,0,30.273358,-47.575099)"
-       cx="32.806725"
-       cy="3.5327499"
-       fx="32.806725"
-       fy="3.5327499"
-       r="23" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2490"
-       id="linearGradient2417"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(51.417219,1.3502817)"
-       x1="-23.916132"
-       y1="43.707703"
-       x2="-23.916132"
-       y2="4.6497173" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient8838"
-       id="radialGradient2420"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(2.1647059,0,0,0.8470576,-111.5647,35.082353)"
-       cx="62.625"
-       cy="4.625"
-       fx="62.625"
-       fy="4.625"
-       r="10.625" />
-  </defs>
-  <path
-     style="opacity:0.3;fill:url(#radialGradient2420);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999987999999995;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
-     id="path8836"
-     d="M 47.000007,39 C 47.000007,43.970562 36.702555,47.999999 24.000007,47.999999 C 11.297459,47.999999 1.0000068,43.970562 1.0000068,39 C 1.0000068,34.029437 11.297459,30 24.000007,30 C 36.702555,30 47.000007,34.029437 47.000007,39 L 47.000007,39 z" />
-  <path
-     style="fill:url(#radialGradient2415);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2417);stroke-width:0.99999988px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     id="path2421"
-     d="M 1.5000006,31.761226 C 1.5000006,31.761226 10.115608,15.647729 22.458894,9.2294409 C 29.653279,5.4884898 41.244893,4.5285552 46.43013,13.320438 C 46.43013,13.320438 48.176874,36.419951 34.202924,42.922755 C 34.202924,42.922755 19.743769,50.687298 1.5000006,31.761226 z" />
-  <path
-     style="font-size:26.70637703px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#a1ceef;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:URW Gothic L;-inkscape-font-specification:URW Gothic L Book"
-     id="path2438"
-     d="M 16,30.999999 C 17.225378,30.999999 19.774622,30.999999 21,30.999999 C 21.020028,28.309559 20.916511,25.61742 21,22.928239 C 21,21.493793 21.209448,20.211199 22.896799,20.211199 C 24.832644,20.211199 24.986483,21.181016 24.986483,23.02827 C 24.986483,24.716506 24.986483,29.311763 24.986483,30.999999 C 26.21186,30.999999 28.774623,31 30,31 C 30.014374,28.354294 29.941186,25.707605 30,23.062615 C 30.008937,21.790435 29.886674,20.211199 31.992422,20.211199 C 33.88686,20.211199 33.999064,21.457713 33.999064,23.083965 C 33.999064,24.753635 33.999063,29.330328 33.999064,31 C 35.22444,31 37.774622,31 39,31 C 38.985776,28.048126 39.029681,25.095218 38.975706,22.144048 C 38.898843,20.359713 38.212819,18.388221 36.387725,17.484421 C 35.343606,17.14161 35.045063,17.011799 33.742745,17.011799 C 31.060737,17.011799 20.652644,17 16,17 C 16,21.666666 16,26.333334 16,30.999999 z" />
-  <path
-     style="font-size:26.70637703px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:url(#linearGradient2411);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:URW Gothic L;-inkscape-font-specification:URW Gothic L Book"
-     id="text3190"
-     d="M 16,31.999999 C 17.225378,31.999999 19.774622,31.999999 21,31.999999 C 21.020028,29.309559 20.916511,26.61742 21,23.928239 C 21,22.493793 21.209448,21.211199 22.896799,21.211199 C 24.832644,21.211199 24.986483,22.181016 24.986483,24.02827 C 24.986483,25.716506 24.986483,30.311763 24.986483,31.999999 C 26.21186,31.999999 28.774623,32 30,32 C 30.014374,29.354294 29.941186,26.707605 30,24.062615 C 30.008937,22.790435 29.886674,21.211199 31.992422,21.211199 C 33.88686,21.211199 33.999064,22.457713 33.999064,24.083965 C 33.999064,25.753635 33.999063,30.330328 33.999064,32 C 35.22444,32 37.774622,32 39,32 C 38.985776,29.048126 39.029681,26.095218 38.975706,23.144048 C 38.898843,21.359713 38.212819,19.388221 36.387725,18.484421 C 35.343606,18.14161 35.045063,18.011799 33.742745,18.011799 C 31.060737,18.011799 20.652644,18 16,18 C 16,22.666666 16,27.333334 16,31.999999 z" />
-  <path
-     style="opacity:0.4;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2408);stroke-width:0.99999988px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     id="path3238"
-     d="M 31.90625,7.4999998 C 28.681328,7.7425666 25.48596,8.7210967 22.90625,10.0625 C 11.707044,15.885887 3.6907335,29.825628 2.71875,31.5625 C 11.484066,40.437302 19.207332,43.094404 24.75,43.5 C 30.407274,43.913983 33.75,42.09375 33.75,42.09375 C 33.760173,42.083092 33.770592,42.072673 33.78125,42.0625 C 40.364812,38.998827 43.337844,31.95008 44.625,25.5 C 45.868154,19.27042 45.525212,13.993747 45.5,13.625 C 42.448467,8.6273583 37.213852,7.1007814 31.90625,7.4999998 z" />
-</svg>
diff --git a/src/Extensions/Banshee.Mpris/Makefile.in b/src/Extensions/Banshee.Mpris/Makefile.in
index 7c2c39a..e69f3ff 100644
--- a/src/Extensions/Banshee.Mpris/Makefile.in
+++ b/src/Extensions/Banshee.Mpris/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -425,12 +433,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -482,7 +486,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Mpris/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Mpris/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Mpris/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Mpris/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -740,6 +765,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -747,21 +774,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -783,7 +819,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -848,6 +883,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.MultimediaKeys/Makefile.in b/src/Extensions/Banshee.MultimediaKeys/Makefile.in
index aff3728..641ffbf 100644
--- a/src/Extensions/Banshee.MultimediaKeys/Makefile.in
+++ b/src/Extensions/Banshee.MultimediaKeys/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -419,12 +427,8 @@ RESOURCES = Banshee.MultimediaKeys.addin.xml
 @ENABLE_GNOME_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_GNOME_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_GNOME_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_GNOME_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_GNOME_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_GNOME_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_GNOME_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_GNOME_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -476,7 +480,7 @@ RESOURCES = Banshee.MultimediaKeys.addin.xml
 
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_GNOME_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_GNOME_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_GNOME_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_GNOME_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -604,14 +608,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.MultimediaKeys/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.MultimediaKeys/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.MultimediaKeys/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.MultimediaKeys/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -629,25 +633,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -677,13 +697,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -715,6 +739,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -737,6 +762,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -744,21 +771,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -780,7 +816,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -845,6 +880,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_GNOME_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_GNOME_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_GNOME_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.NotificationArea/Makefile.in b/src/Extensions/Banshee.NotificationArea/Makefile.in
index 9b985b1..f7cfe61 100644
--- a/src/Extensions/Banshee.NotificationArea/Makefile.in
+++ b/src/Extensions/Banshee.NotificationArea/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,8 +83,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -203,29 +226,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -260,6 +264,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -303,9 +308,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -441,12 +449,8 @@ RESOURCES = \
 @PLATFORM_DARWIN_FALSE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @PLATFORM_DARWIN_FALSE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at PLATFORM_DARWIN_FALSE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at PLATFORM_DARWIN_FALSE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at PLATFORM_DARWIN_FALSE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at PLATFORM_DARWIN_FALSE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @PLATFORM_DARWIN_FALSE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @PLATFORM_DARWIN_FALSE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -498,7 +502,7 @@ RESOURCES = \
 
 @PLATFORM_DARWIN_FALSE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @PLATFORM_DARWIN_FALSE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at PLATFORM_DARWIN_FALSE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at PLATFORM_DARWIN_FALSE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @PLATFORM_DARWIN_FALSE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @PLATFORM_DARWIN_FALSE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @PLATFORM_DARWIN_FALSE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -626,14 +630,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.NotificationArea/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.NotificationArea/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.NotificationArea/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.NotificationArea/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -651,25 +655,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -699,13 +719,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -737,6 +761,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -759,6 +784,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -766,21 +793,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -802,7 +838,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -867,6 +902,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @PLATFORM_DARWIN_FALSE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @PLATFORM_DARWIN_FALSE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @PLATFORM_DARWIN_FALSE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.NowPlaying/Makefile.in b/src/Extensions/Banshee.NowPlaying/Makefile.in
index ffb0d70..458f568 100644
--- a/src/Extensions/Banshee.NowPlaying/Makefile.in
+++ b/src/Extensions/Banshee.NowPlaying/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -436,12 +444,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -493,7 +497,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -620,14 +624,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.NowPlaying/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.NowPlaying/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.NowPlaying/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.NowPlaying/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -645,25 +649,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -693,13 +713,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -731,6 +755,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -751,6 +776,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -758,21 +785,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -794,7 +830,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -859,6 +894,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.PlayQueue/Makefile.in b/src/Extensions/Banshee.PlayQueue/Makefile.in
index 6fa3f5f..9a04c5c 100644
--- a/src/Extensions/Banshee.PlayQueue/Makefile.in
+++ b/src/Extensions/Banshee.PlayQueue/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -431,12 +439,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -488,7 +492,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -615,14 +619,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.PlayQueue/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.PlayQueue/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.PlayQueue/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.PlayQueue/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -640,25 +644,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -688,13 +708,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -726,6 +750,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -746,6 +771,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -753,21 +780,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -789,7 +825,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -854,6 +889,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs
index 84c6bda..96aed2d 100644
--- a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs
+++ b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/AmarokPlayerImportSource.cs
@@ -28,7 +28,6 @@
 //
 
 using System;
-using System.Data;
 using System.IO;
 
 using Mono.Unix;
@@ -132,7 +131,7 @@ namespace Banshee.PlayerMigration
                                  created = Convert.ToInt64 (stats_reader[2]);
                                  accessed = Convert.ToInt64 (stats_reader[3]);
                              }
-                             stats_reader.Close ();
+                             stats_reader.Dispose ();
                          } catch (Exception) {}
 
                          UpdateUserJob (processed, count, artist, title);
@@ -161,7 +160,7 @@ namespace Banshee.PlayerMigration
                          // something went wrong, skip entry
                      }
                  }
-                 reader.Close ();
+                 reader.Dispose ();
                  import_manager.NotifyAllSources ();
 
                  // TODO migrating more than the podcast subscriptions (eg whether to auto sync them etc) means 1) we need to have those features
diff --git a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs
index 5d2ee4d..0034c0d 100644
--- a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs
+++ b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/ItunesPlayerImportSource.cs
@@ -30,7 +30,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 using System.Globalization;
 using System.IO;
 using System.Text;
diff --git a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs
index 87f5d52..7c842ed 100644
--- a/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs
+++ b/src/Extensions/Banshee.PlayerMigration/Banshee.PlayerMigration/RhythmboxPlayerImportSource.cs
@@ -29,7 +29,6 @@
 //
 
 using System;
-using System.Data;
 using System.IO;
 using System.Xml;
 
diff --git a/src/Extensions/Banshee.PlayerMigration/Makefile.in b/src/Extensions/Banshee.PlayerMigration/Makefile.in
index dc987a2..f290fac 100644
--- a/src/Extensions/Banshee.PlayerMigration/Makefile.in
+++ b/src/Extensions/Banshee.PlayerMigration/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.PlayerMigration/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.PlayerMigration/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.PlayerMigration/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.PlayerMigration/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -739,6 +764,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -746,21 +773,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -782,7 +818,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -847,6 +882,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Podcasting/Makefile.in b/src/Extensions/Banshee.Podcasting/Makefile.in
index aa74057..a6994e0 100644
--- a/src/Extensions/Banshee.Podcasting/Makefile.in
+++ b/src/Extensions/Banshee.Podcasting/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -460,12 +468,8 @@ RESOURCES = \
 @ENABLE_PODCAST_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_PODCAST_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_PODCAST_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_PODCAST_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_PODCAST_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_PODCAST_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_PODCAST_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_PODCAST_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -517,7 +521,7 @@ RESOURCES = \
 
 @ENABLE_PODCAST_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_PODCAST_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_PODCAST_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_PODCAST_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_PODCAST_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_PODCAST_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_PODCAST_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -646,14 +650,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Podcasting/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Podcasting/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Podcasting/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Podcasting/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -671,25 +675,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -719,13 +739,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -757,6 +781,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -779,6 +804,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -786,21 +813,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -822,7 +858,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -887,6 +922,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_PODCAST_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_PODCAST_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_PODCAST_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.RemoteAudio/Makefile.in b/src/Extensions/Banshee.RemoteAudio/Makefile.in
index e548e94..879f618 100644
--- a/src/Extensions/Banshee.RemoteAudio/Makefile.in
+++ b/src/Extensions/Banshee.RemoteAudio/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -428,12 +436,8 @@ RESOURCES = \
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @REMOTE_AUDIO_ENABLED_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at REMOTE_AUDIO_ENABLED_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at REMOTE_AUDIO_ENABLED_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at REMOTE_AUDIO_ENABLED_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at REMOTE_AUDIO_ENABLED_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -485,7 +489,7 @@ RESOURCES = \
 
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at REMOTE_AUDIO_ENABLED_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at REMOTE_AUDIO_ENABLED_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @REMOTE_AUDIO_ENABLED_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @REMOTE_AUDIO_ENABLED_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -614,14 +618,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.RemoteAudio/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.RemoteAudio/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.RemoteAudio/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.RemoteAudio/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -639,25 +643,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -687,13 +707,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -725,6 +749,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -747,6 +772,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -754,21 +781,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -790,7 +826,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -860,6 +895,7 @@ run:
 @REMOTE_AUDIO_ENABLED_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @REMOTE_AUDIO_ENABLED_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @REMOTE_AUDIO_ENABLED_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Sample/Makefile.in b/src/Extensions/Banshee.Sample/Makefile.in
index b062e51..1eda1a9 100644
--- a/src/Extensions/Banshee.Sample/Makefile.in
+++ b/src/Extensions/Banshee.Sample/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -194,29 +197,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -251,6 +235,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -292,9 +277,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -389,14 +377,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Sample/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Sample/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Sample/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Sample/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -414,6 +402,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -443,13 +432,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -477,6 +470,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -495,6 +489,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -503,18 +499,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -550,6 +556,7 @@ uninstall-am:
 
 
 # include $(top_srcdir)/build/build.mk
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.SqlDebugConsole/Makefile.in b/src/Extensions/Banshee.SqlDebugConsole/Makefile.in
index baed9d4..a337c98 100644
--- a/src/Extensions/Banshee.SqlDebugConsole/Makefile.in
+++ b/src/Extensions/Banshee.SqlDebugConsole/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -194,29 +197,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -251,6 +235,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -292,9 +277,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -389,14 +377,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.SqlDebugConsole/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.SqlDebugConsole/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.SqlDebugConsole/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.SqlDebugConsole/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -414,6 +402,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -443,13 +432,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -477,6 +470,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -495,6 +489,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -503,18 +499,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -550,6 +556,7 @@ uninstall-am:
 
 
 #include $(top_srcdir)/build/build.mk
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Torrent/Makefile.in b/src/Extensions/Banshee.Torrent/Makefile.in
index f4b27a4..ba32863 100644
--- a/src/Extensions/Banshee.Torrent/Makefile.in
+++ b/src/Extensions/Banshee.Torrent/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -424,12 +432,8 @@ EXTRA_BUNDLE = $(MONOTORRENT_ASSEMBLIES)
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_MONOTORRENT_DBUS_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_MONOTORRENT_DBUS_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_MONOTORRENT_DBUS_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_MONOTORRENT_DBUS_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_MONOTORRENT_DBUS_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -481,7 +485,7 @@ EXTRA_BUNDLE = $(MONOTORRENT_ASSEMBLIES)
 
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_MONOTORRENT_DBUS_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_MONOTORRENT_DBUS_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_MONOTORRENT_DBUS_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_MONOTORRENT_DBUS_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -610,14 +614,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Torrent/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Torrent/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Torrent/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Torrent/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -635,25 +639,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -683,13 +703,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -721,6 +745,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -743,6 +768,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -750,21 +777,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -786,7 +822,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -861,6 +896,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_MONOTORRENT_DBUS_TRUE@	for ASM in $(MONOTORRENT_ASSEMBLIES); do \
 @HAVE_MONOTORRENT_DBUS_TRUE@		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
 @HAVE_MONOTORRENT_DBUS_TRUE@	done;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Wikipedia/Makefile.in b/src/Extensions/Banshee.Wikipedia/Makefile.in
index d3ccfd2..1bee2a1 100644
--- a/src/Extensions/Banshee.Wikipedia/Makefile.in
+++ b/src/Extensions/Banshee.Wikipedia/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -422,12 +430,8 @@ RESOURCES = Banshee.Wikipedia.addin.xml
 @HAVE_LIBWEBKIT_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_LIBWEBKIT_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_LIBWEBKIT_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_LIBWEBKIT_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_LIBWEBKIT_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -479,7 +483,7 @@ RESOURCES = Banshee.Wikipedia.addin.xml
 
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_LIBWEBKIT_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_LIBWEBKIT_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_LIBWEBKIT_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -608,14 +612,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.Wikipedia/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.Wikipedia/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.Wikipedia/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.Wikipedia/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -633,25 +637,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -681,13 +701,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -719,6 +743,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -849,6 +884,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_LIBWEBKIT_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_LIBWEBKIT_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_LIBWEBKIT_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Banshee.Wikipedia/ThemeIcons/README b/src/Extensions/Banshee.Wikipedia/ThemeIcons/README
new file mode 100644
index 0000000..4a8e959
--- /dev/null
+++ b/src/Extensions/Banshee.Wikipedia/ThemeIcons/README
@@ -0,0 +1,32 @@
+*****************************************
+*                                       *
+*    Wikipedia icon in Tango style      *
+*                                       *
+********************* by mischamajskij **
+
+1) INSTALLATION - USE
+
+This icon is meant as a replacement to the original Wikipedia logo or favicon in Tango style.
+It can be used in websites or apps for links to Wikipedia or in your browser to replace the default favicon.
+
+If you use Firefox you can change the favicons in your bookmarks menu/toolbar using one of the following addons:
+- Favicon Picker 3 (https://addons.mozilla.org/it/firefox/addon/7849)
+- Favicon Picker 2 (https://addons.mozilla.org/it/firefox/addon/3176)
+
+
+2) CREDITS - LICENSE
+
+The white square used as a background comes from some "emblems" icons in the Tango library, which is now public domain
+(http://tango.freedesktop.org/Tango_Desktop_Project).
+The "W" has been drawn from scratch, as the one in the original logo is restricted.
+
+The icons are double licensed: you can choose between a CC-by-sa 3.0 (http://creativecommons.org/licenses/by-sa/3.0/)
+and a GPL 3.0 (http://creativecommons.org/licenses/GPL/3.0/) license, depending on your needs.
+
+
+3) AUTHOR
+
+This icon was drawn on april 2009 by mischamajskij.
+It replaces an older one, previously appeared on deviantArt.
+If you are still looking for a copy of the old icon, or for any other kind of request, please contact me on my DA page
+(http://mischamajskij.deviantart.com/).
\ No newline at end of file
diff --git a/src/Extensions/Banshee.YouTube/Makefile.in b/src/Extensions/Banshee.YouTube/Makefile.in
index 6ce1a0b..2ad6035 100644
--- a/src/Extensions/Banshee.YouTube/Makefile.in
+++ b/src/Extensions/Banshee.YouTube/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -81,8 +83,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -203,29 +226,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -260,6 +264,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -301,9 +306,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -427,12 +435,8 @@ RESOURCES = Banshee.YouTube.addin.xml
 @HAVE_GDATA_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @HAVE_GDATA_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at HAVE_GDATA_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at HAVE_GDATA_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at HAVE_GDATA_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at HAVE_GDATA_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @HAVE_GDATA_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @HAVE_GDATA_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -484,7 +488,7 @@ RESOURCES = Banshee.YouTube.addin.xml
 
 @HAVE_GDATA_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @HAVE_GDATA_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at HAVE_GDATA_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at HAVE_GDATA_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @HAVE_GDATA_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @HAVE_GDATA_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @HAVE_GDATA_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -612,14 +616,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Banshee.YouTube/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Banshee.YouTube/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Banshee.YouTube/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Banshee.YouTube/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -637,25 +641,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -685,13 +705,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -723,6 +747,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -745,6 +770,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -752,21 +779,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -788,7 +824,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -853,6 +888,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @HAVE_GDATA_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @HAVE_GDATA_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @HAVE_GDATA_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Extensions/Makefile.in b/src/Extensions/Makefile.in
index 079aa80..3e43431 100644
--- a/src/Extensions/Makefile.in
+++ b/src/Extensions/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -427,14 +443,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Extensions/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Extensions/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Extensions/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Extensions/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -452,6 +468,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -466,7 +483,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -483,7 +500,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -491,7 +508,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -517,16 +534,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -534,14 +551,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -553,7 +570,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -562,29 +579,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -605,29 +627,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -657,6 +694,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -676,6 +714,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -684,18 +724,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -716,8 +766,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -733,6 +783,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ArrayDataReader.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ArrayDataReader.cs
new file mode 100644
index 0000000..16dbd2b
--- /dev/null
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ArrayDataReader.cs
@@ -0,0 +1,107 @@
+//
+// ArrayDataReader.cs
+//
+// Authors:
+//   Gabriel Burt <gburt at novell.com>
+//
+// Copyright (C) 2010 Novell, Inc.
+//
+// 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 above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// 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.
+//
+
+using System;
+using System.Linq;
+using System.Text;
+using System.Collections;
+using System.Collections.Generic;
+using System.Runtime.InteropServices;
+
+using Hyena;
+
+namespace Hyena.Data.Sqlite
+{
+    internal class ArrayDataReader : IDataReader
+    {
+        int rows;
+        int row = -1;
+        List<object[]> data = new List<object[]> ();
+
+        internal ArrayDataReader (IDataReader reader)
+        {
+            if (!reader.Read ())
+                return;
+
+            FieldCount = reader.FieldCount;
+            FieldNames = reader.FieldNames;
+
+            do {
+                var vals = new object[FieldCount];
+                for (int i = 0; i < FieldCount; i++) {
+                    vals[i] = reader[i];
+                }
+
+                data.Add (vals);
+                rows++;
+            } while (reader.Read ());
+        }
+
+        public void Dispose ()
+        {
+            row = -1;
+        }
+
+        public int FieldCount { get; private set; }
+        public string [] FieldNames { get; private set; }
+
+        public bool Read ()
+        {
+            row++;
+            return row < rows;
+        }
+
+        public object this[int i] {
+            get { return data[row][i]; }
+        }
+
+        public object this[string columnName] {
+            get { return this[GetColumnIndex (columnName)]; }
+        }
+
+        public T Get<T> (int i)
+        {
+            return (T) Get (i, typeof(T));
+        }
+
+        public object Get (int i, Type asType)
+        {
+            return QueryReader.GetAs (this[i], asType);
+        }
+
+        public T Get<T> (string columnName)
+        {
+            return Get<T> (GetColumnIndex (columnName));
+        }
+
+        private int GetColumnIndex (string columnName)
+        {
+            return Array.IndexOf (FieldNames, columnName);
+        }
+    }
+}
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumn.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumn.cs
index e37bbbc..9021672 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumn.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumn.cs
@@ -27,7 +27,6 @@
 //
 
 using System;
-using System.Data;
 using System.Reflection;
 using System.Text;
 
@@ -80,19 +79,10 @@ namespace Hyena.Data.Sqlite
 
         public object GetValue (object target)
         {
-            object result = field_info != null
-                ? field_info.GetValue (target)
-                : property_info.GetValue (target, null);
+            object result = GetRawValue (target);
             return SqliteUtils.ToDbFormat (type, result);
         }
 
-        public void SetValue (object target, IDataReader reader, int column)
-        {
-            // FIXME should we insist on nullable types?
-            object value = reader.IsDBNull (column) ? null : reader.GetValue (column);
-            SetValue (target, SqliteUtils.FromDbFormat(type, value));
-        }
-
         public void SetValue (object target, object value)
         {
             if (field_info != null) {
@@ -102,13 +92,9 @@ namespace Hyena.Data.Sqlite
             }
         }
 
-        public string Name {
-            get { return name; }
-        }
-
-        public string Type {
-            get { return column_type; }
-        }
+        public string Name { get { return name; } }
+        public string Type { get { return column_type; } }
+        public Type ValueType { get { return type; } }
     }
 
     public sealed class DatabaseColumn : AbstractDatabaseColumn
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumnAttribute.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumnAttribute.cs
index dc022ed..adaf854 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumnAttribute.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/DatabaseColumnAttribute.cs
@@ -28,7 +28,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 using System.Reflection;
 using System.Text;
 
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteArrayDataReader.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteArrayDataReader.cs
deleted file mode 100644
index 7653995..0000000
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteArrayDataReader.cs
+++ /dev/null
@@ -1,392 +0,0 @@
-//
-// HyenaSqliteArrayDataReader.cs
-//
-// Authors:
-//   Vladimir Vukicevic  <vladimir at pobox.com>
-//   Everaldo Canuto  <everaldo_canuto at yahoo.com.br>
-//   Joshua Tauberer <tauberer at for.net>
-//   John Millikin <jmillikin at gmail.com>
-//
-// Copyright (C) 2002  Vladimir Vukicevic
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-using System;
-using System.Data;
-using System.Data.Common;
-using System.Text;
-using System.Collections;
-using System.Collections.Generic;
-using Mono.Data.Sqlite;
-
-namespace Hyena.Data.Sqlite
-{
-    /*
-     * Adapted from Mono.Data.SqliteClient.SqliteDataReader
-     *
-     * The new data reader in Mono.Data.Sqlite lazily loads the resultset
-     * from the underlying database cursor. This class reads the entire
-     * resultset into memory, allowing further queries to be executed before
-     * all data readers have been exhausted.
-     *
-     */
-
-    internal class HyenaSqliteArrayDataReader : MarshalByRefObject, IEnumerable, IDataReader, IDisposable, IDataRecord
-    {
-        #region Fields
-
-        private List<object[]> rows;
-        private string[] columns;
-        private Dictionary<string, int> column_names;
-        private int current_row;
-        private bool closed;
-        private int records_affected;
-        private string[] decltypes;
-
-        #endregion
-
-        #region Constructors and destructors
-
-        internal HyenaSqliteArrayDataReader (SqliteDataReader reader)
-        {
-            rows = new List<object[]> ();
-            column_names = new Dictionary<string, int> ();
-            closed = false;
-            current_row = -1;
-            ReadAllRows (reader);
-            reader.Dispose ();
-        }
-
-        #endregion
-
-        #region Properties
-
-        public int Depth {
-            get { return 0; }
-        }
-
-        public int FieldCount {
-            get { return columns.Length; }
-        }
-
-        public object this[string name] {
-            get {
-                return GetValue (GetOrdinal (name));
-            }
-        }
-
-        public object this[int i] {
-            get { return GetValue (i); }
-        }
-
-        public bool IsClosed {
-            get { return closed; }
-        }
-
-        public int RecordsAffected {
-            get { return records_affected; }
-        }
-
-        #endregion
-
-        private void ReadAllRows (SqliteDataReader reader)
-        {
-            int ii, field_count = reader.FieldCount;
-
-            /* Metadata */
-            records_affected = reader.RecordsAffected;
-
-            decltypes = new string[field_count];
-            for (ii = 0; ii < field_count; ii++) {
-                    decltypes[ii] = reader.GetDataTypeName (ii);
-            }
-
-            columns = new string[field_count];
-            for (ii = 0; ii < field_count; ii++) {
-                    string column_name = reader.GetName (ii);
-                    columns[ii] = column_name;
-                    column_names[column_name] = ii;
-                    column_names[column_name.ToUpper ()] = ii;
-            }
-
-            /* Read all rows, store in this->rows */
-            while (reader.Read ()) {
-                object[] data_row = new object[field_count];
-                for (ii = 0; ii < field_count; ii++) {
-                        object value = reader.GetValue (ii);
-                        if (Convert.IsDBNull (value))
-                            value = null;
-                        data_row[ii] = value;
-                }
-
-                rows.Add (data_row);
-            }
-        }
-
-        #region  Public Methods
-
-        public void Close ()
-        {
-            closed = true;
-        }
-
-        public void Dispose ()
-        {
-            Close ();
-        }
-
-        IEnumerator IEnumerable.GetEnumerator ()
-        {
-            return new DbEnumerator (this);
-        }
-
-        public DataTable GetSchemaTable ()
-        {
-            DataTable dataTableSchema = new DataTable ();
-
-            dataTableSchema.Columns.Add ("ColumnName", typeof (String));
-            dataTableSchema.Columns.Add ("ColumnOrdinal", typeof (Int32));
-            dataTableSchema.Columns.Add ("ColumnSize", typeof (Int32));
-            dataTableSchema.Columns.Add ("NumericPrecision", typeof (Int32));
-            dataTableSchema.Columns.Add ("NumericScale", typeof (Int32));
-            dataTableSchema.Columns.Add ("IsUnique", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsKey", typeof (Boolean));
-            dataTableSchema.Columns.Add ("BaseCatalogName", typeof (String));
-            dataTableSchema.Columns.Add ("BaseColumnName", typeof (String));
-            dataTableSchema.Columns.Add ("BaseSchemaName", typeof (String));
-            dataTableSchema.Columns.Add ("BaseTableName", typeof (String));
-            dataTableSchema.Columns.Add ("DataType", typeof(Type));
-            dataTableSchema.Columns.Add ("AllowDBNull", typeof (Boolean));
-            dataTableSchema.Columns.Add ("ProviderType", typeof (Int32));
-            dataTableSchema.Columns.Add ("IsAliased", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsExpression", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsIdentity", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsAutoIncrement", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsRowVersion", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsHidden", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsLong", typeof (Boolean));
-            dataTableSchema.Columns.Add ("IsReadOnly", typeof (Boolean));
-
-            dataTableSchema.BeginLoadData();
-            for (int i = 0; i < this.FieldCount; i += 1 ) {
-
-                DataRow schemaRow = dataTableSchema.NewRow ();
-
-                schemaRow["ColumnName"] = columns[i];
-                schemaRow["ColumnOrdinal"] = i;
-                schemaRow["ColumnSize"] = 0;
-                schemaRow["NumericPrecision"] = 0;
-                schemaRow["NumericScale"] = 0;
-                schemaRow["IsUnique"] = false;
-                schemaRow["IsKey"] = false;
-                schemaRow["BaseCatalogName"] = "";
-                schemaRow["BaseColumnName"] = columns[i];
-                schemaRow["BaseSchemaName"] = "";
-                schemaRow["BaseTableName"] = "";
-                schemaRow["DataType"] = typeof(string);
-                schemaRow["AllowDBNull"] = true;
-                schemaRow["ProviderType"] = 0;
-                schemaRow["IsAliased"] = false;
-                schemaRow["IsExpression"] = false;
-                schemaRow["IsIdentity"] = false;
-                schemaRow["IsAutoIncrement"] = false;
-                schemaRow["IsRowVersion"] = false;
-                schemaRow["IsHidden"] = false;
-                schemaRow["IsLong"] = false;
-                schemaRow["IsReadOnly"] = false;
-
-                dataTableSchema.Rows.Add (schemaRow);
-                schemaRow.AcceptChanges();
-            }
-            dataTableSchema.EndLoadData();
-
-            return dataTableSchema;
-        }
-
-        public bool NextResult ()
-        {
-            current_row++;
-
-            return current_row < rows.Count;
-        }
-
-        public bool Read ()
-        {
-            return NextResult ();
-        }
-
-        #endregion
-
-        #region IDataRecord getters
-
-        public bool GetBoolean (int i)
-        {
-            return Convert.ToBoolean (rows[current_row][i]);
-        }
-
-        public byte GetByte (int i)
-        {
-            return Convert.ToByte (rows[current_row][i]);
-        }
-
-        public long GetBytes (int i, long fieldOffset, byte[] buffer, int bufferOffset, int length)
-        {
-            byte[] data = (byte[])(rows[current_row][i]);
-            if (buffer != null)
-                Array.Copy (data, fieldOffset, buffer, bufferOffset, length);
-            return data.LongLength - fieldOffset;
-        }
-
-        public char GetChar (int i)
-        {
-            return Convert.ToChar (rows[current_row][i]);
-        }
-
-        public long GetChars (int i, long fieldOffset, char[] buffer, int bufferOffset, int length)
-        {
-            char[] data = (char[])(rows[current_row][i]);
-            if (buffer != null)
-                Array.Copy (data, fieldOffset, buffer, bufferOffset, length);
-            return data.LongLength - fieldOffset;
-        }
-
-        public IDataReader GetData (int i)
-        {
-            return ((IDataReader) this [i]);
-        }
-
-        public string GetDataTypeName (int i)
-        {
-            if (decltypes != null && decltypes[i] != null)
-                return decltypes[i];
-            return "text"; // SQL Lite data type
-        }
-
-        public DateTime GetDateTime (int i)
-        {
-            return Convert.ToDateTime (rows[current_row][i]);
-        }
-
-        public decimal GetDecimal (int i)
-        {
-            return Convert.ToDecimal (rows[current_row][i]);
-        }
-
-        public double GetDouble (int i)
-        {
-            return Convert.ToDouble (rows[current_row][i]);
-        }
-
-        public Type GetFieldType (int i)
-        {
-            int row = current_row;
-            if (row == -1 && rows.Count == 0) return typeof(string);
-            if (row == -1) row = 0;
-            object element = rows[row][i];
-            if (element != null)
-                return element.GetType();
-            else
-                return typeof (string);
-
-            // Note that the return value isn't guaranteed to
-            // be the same as the rows are read if different
-            // types of information are stored in the column.
-        }
-
-        public float GetFloat (int i)
-        {
-            return Convert.ToSingle (rows[current_row][i]);
-        }
-
-        public Guid GetGuid (int i)
-        {
-            object value = GetValue (i);
-            if (!(value is Guid)) {
-                if (value is DBNull)
-                    throw new SqliteException ("Column value must not be null");
-                throw new InvalidCastException ("Type is " + value.GetType ().ToString ());
-            }
-            return ((Guid) value);
-        }
-
-        public short GetInt16 (int i)
-        {
-            return Convert.ToInt16 (rows[current_row][i]);
-        }
-
-        public int GetInt32 (int i)
-        {
-            return Convert.ToInt32 (rows[current_row][i]);
-        }
-
-        public long GetInt64 (int i)
-        {
-            return Convert.ToInt64 (rows[current_row][i]);
-        }
-
-        public string GetName (int i)
-        {
-            return columns[i];
-        }
-
-        public int GetOrdinal (string name)
-        {
-            int v = -1;
-            if (!column_names.TryGetValue (name, out v)) {
-                if (!column_names.TryGetValue (name.ToUpper (), out v)) {
-                    throw new ArgumentException("Column does not exist.");
-                }
-            }
-            return v;
-        }
-
-        public string GetString (int i)
-        {
-            return rows[current_row][i].ToString();
-        }
-
-        public object GetValue (int i)
-        {
-            return rows[current_row][i];
-        }
-
-        public int GetValues (object[] values)
-        {
-            int num_to_fill = System.Math.Min (values.Length, columns.Length);
-            for (int i = 0; i < num_to_fill; i++) {
-                if (rows[current_row][i] != null) {
-                    values[i] = rows[current_row][i];
-                } else {
-                    values[i] = null;
-                }
-            }
-            return num_to_fill;
-        }
-
-        public bool IsDBNull (int i)
-        {
-            return rows[current_row][i] == null;
-        }
-
-        #endregion
-    }
-}
-// vi:tabstop=4:expandtab
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs
index a550d0a..712baff 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs
@@ -29,10 +29,8 @@
 
 using System;
 using System.IO;
-using System.Data;
 using System.Text;
 using System.Threading;
-using Mono.Data.Sqlite;
 
 namespace Hyena.Data.Sqlite
 {
@@ -66,6 +64,8 @@ namespace Hyena.Data.Sqlite
             get { return command; }
         }
 
+        public bool ReaderDisposes { get; set; }
+
         internal HyenaCommandType CommandType;
 
         public HyenaSqliteCommand (string command)
@@ -79,7 +79,7 @@ namespace Hyena.Data.Sqlite
             ApplyValues (param_values);
         }
 
-        internal void Execute (HyenaSqliteConnection hconnection, SqliteConnection connection)
+        internal void Execute (HyenaSqliteConnection hconnection, Connection connection)
         {
             if (finished) {
                 throw new Exception ("Command is already set to finished; result needs to be claimed before command can be rerun");
@@ -89,40 +89,36 @@ namespace Hyena.Data.Sqlite
             result = null;
             int execution_ms = 0;
 
-            using (SqliteCommand sql_command = new SqliteCommand (CurrentSqlText)) {
-                sql_command.Connection = connection;
-
-                hconnection.OnExecuting (sql_command);
-
-                try {
-                    ticks = System.Environment.TickCount;
-
-                    switch (CommandType) {
-                        case HyenaCommandType.Reader:
-                            using (SqliteDataReader reader = sql_command.ExecuteReader ()) {
-                                result = new HyenaSqliteArrayDataReader (reader);
-                            }
-                            break;
-
-                        case HyenaCommandType.Scalar:
-                            result = sql_command.ExecuteScalar ();
-                            break;
-
-                        case HyenaCommandType.Execute:
-                        default:
-                            sql_command.ExecuteNonQuery ();
-                            result = sql_command.LastInsertRowID ();
-                            break;
-                    }
-
-                    execution_ms = System.Environment.TickCount - ticks;
-                    if (log_all) {
-                        Log.DebugFormat ("Executed in {0}ms {1}", execution_ms, sql_command.CommandText);
-                    }
-                } catch (Exception e) {
-                    Log.DebugFormat ("Exception executing command: {0}", sql_command.CommandText);
-                    execution_exception = e;
+            string command_text = CurrentSqlText;
+            try {
+                ticks = System.Environment.TickCount;
+
+                switch (CommandType) {
+                    case HyenaCommandType.Reader:
+                        using (var reader = connection.Query (command_text)) {
+                            result = new ArrayDataReader (reader);
+                        }
+                        break;
+
+                    case HyenaCommandType.Scalar:
+                        result = connection.Query<object> (command_text);
+                        break;
+
+                    case HyenaCommandType.Execute:
+                    default:
+                        connection.Execute (command_text);
+                        result = connection.LastInsertRowId;
+                        break;
+                }
+
+                execution_ms = System.Environment.TickCount - ticks;
+                if (log_all) {
+                    Log.DebugFormat ("Executed in {0}ms {1}", execution_ms, command_text);
                 }
+            } catch (Exception e) {
+                Log.DebugFormat ("Exception executing command: {0}", command_text);
+                Log.Exception (e);
+                execution_exception = e;
             }
 
             // capture the text
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs
index eaba2d8..a87e513 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs
@@ -28,10 +28,8 @@
 //
 
 using System;
-using System.Data;
 using System.Threading;
 using System.Collections.Generic;
-using Mono.Data.Sqlite;
 
 namespace Hyena.Data.Sqlite
 {
@@ -54,7 +52,7 @@ namespace Hyena.Data.Sqlite
             if (!read) {
                 Read ();
             }
-            return (T) SqliteUtils.FromDbFormat (typeof(T), reader[i]);
+            return reader.Get<T> (i);
         }
 
         public bool Read ()
@@ -70,15 +68,6 @@ namespace Hyena.Data.Sqlite
         }
     }
 
-    public class ExecutingEventArgs : EventArgs
-    {
-        public readonly SqliteCommand Command;
-        public ExecutingEventArgs (SqliteCommand command)
-        {
-            Command = command;
-        }
-    }
-
     public enum HyenaCommandType {
         Reader,
         Scalar,
@@ -87,7 +76,7 @@ namespace Hyena.Data.Sqlite
 
     public class HyenaSqliteConnection : IDisposable
     {
-        private SqliteConnection connection;
+        private Hyena.Data.Sqlite.Connection connection;
         private string dbpath;
 
         protected string DbPath { get { return dbpath; } }
@@ -116,9 +105,7 @@ namespace Hyena.Data.Sqlite
             set { warn_if_called_from_thread = value; }
         }
 
-        public string ServerVersion { get { return connection.ServerVersion; } }
-
-        public event EventHandler<ExecutingEventArgs> Executing;
+        public string ServerVersion { get { return Query<string> ("SELECT sqlite_version ()"); } }
 
         public HyenaSqliteConnection(string dbpath)
         {
@@ -129,6 +116,17 @@ namespace Hyena.Data.Sqlite
             queue_thread.Start();
         }
 
+        public void AddFunction<T> () where T : SqliteFunction
+        {
+            connection.AddFunction<T> ();
+        }
+
+        public void RemoveFunction<T> () where T : SqliteFunction
+        {
+            connection.RemoveFunction<T> ();
+        }
+
+
 #region Public Query Methods
 
         // TODO special case for single object param to avoid object []
@@ -138,24 +136,24 @@ namespace Hyena.Data.Sqlite
         {
             command.CommandType = HyenaCommandType.Reader;
             QueueCommand (command);
-            return command.WaitForResult (this) as IDataReader;
+            return (IDataReader) command.WaitForResult (this);
         }
 
         public IDataReader Query (HyenaSqliteCommand command, params object [] param_values)
         {
             command.CommandType = HyenaCommandType.Reader;
             QueueCommand (command, param_values);
-            return command.WaitForResult (this) as IDataReader;
+            return (IDataReader) command.WaitForResult (this);
         }
 
         public IDataReader Query (string command_str, params object [] param_values)
         {
-            return Query (new HyenaSqliteCommand (command_str, param_values));
+            return Query (new HyenaSqliteCommand (command_str, param_values) { ReaderDisposes = true });
         }
 
         public IDataReader Query (object command)
         {
-            return Query (new HyenaSqliteCommand (command.ToString ()));
+            return Query (new HyenaSqliteCommand (command.ToString ()) { ReaderDisposes = true });
         }
 
         // SELECT single column, multiple rows queries
@@ -164,7 +162,7 @@ namespace Hyena.Data.Sqlite
             Type type = typeof (T);
             using (IDataReader reader = Query (command)) {
                 while (reader.Read ()) {
-                    yield return (T) SqliteUtils.FromDbFormat (type, reader[0]);
+                    yield return (T) reader.Get (0, type);
                 }
             }
         }
@@ -174,19 +172,19 @@ namespace Hyena.Data.Sqlite
             Type type = typeof (T);
             using (IDataReader reader = Query (command, param_values)) {
                 while (reader.Read ()) {
-                    yield return (T) SqliteUtils.FromDbFormat (type, reader[0]);
+                    yield return (T) reader.Get (0, type);
                 }
             }
         }
 
         public IEnumerable<T> QueryEnumerable<T> (string command_str, params object [] param_values)
         {
-            return QueryEnumerable<T> (new HyenaSqliteCommand (command_str, param_values));
+            return QueryEnumerable<T> (new HyenaSqliteCommand (command_str, param_values) { ReaderDisposes = true });
         }
 
         public IEnumerable<T> QueryEnumerable<T> (object command)
         {
-            return QueryEnumerable<T> (new HyenaSqliteCommand (command.ToString ()));
+            return QueryEnumerable<T> (new HyenaSqliteCommand (command.ToString ()) { ReaderDisposes = true });
         }
 
         // SELECT single column, single row queries
@@ -208,12 +206,12 @@ namespace Hyena.Data.Sqlite
 
         public T Query<T> (string command_str, params object [] param_values)
         {
-            return Query<T> (new HyenaSqliteCommand (command_str, param_values));
+            return Query<T> (new HyenaSqliteCommand (command_str, param_values) { ReaderDisposes = true });
         }
 
         public T Query<T> (object command)
         {
-            return Query<T> (new HyenaSqliteCommand (command.ToString ()));
+            return Query<T> (new HyenaSqliteCommand (command.ToString ()) { ReaderDisposes = true });
         }
 
         // INSERT, UPDATE, DELETE queries
@@ -233,12 +231,12 @@ namespace Hyena.Data.Sqlite
 
         public int Execute (string command_str, params object [] param_values)
         {
-            return Execute (new HyenaSqliteCommand (command_str, param_values));
+            return Execute (new HyenaSqliteCommand (command_str, param_values) { ReaderDisposes = true });
         }
 
         public int Execute (object command)
         {
-            return Execute (new HyenaSqliteCommand (command.ToString ()));
+            return Execute (new HyenaSqliteCommand (command.ToString ()) { ReaderDisposes = true });
         }
 
 #endregion
@@ -419,8 +417,7 @@ namespace Hyena.Data.Sqlite
         private void ProcessQueue()
         {
             if (connection == null) {
-                connection = new SqliteConnection (String.Format ("Version=3,URI=file:{0}", dbpath));
-                connection.Open ();
+                connection = new Hyena.Data.Sqlite.Connection (dbpath);
             }
 
             // Keep handling queries
@@ -458,15 +455,7 @@ namespace Hyena.Data.Sqlite
             }
 
             // Finish
-            connection.Close ();
-        }
-
-        internal void OnExecuting (SqliteCommand command)
-        {
-            EventHandler<ExecutingEventArgs> handler = Executing;
-            if (handler != null) {
-                handler (this, new ExecutingEventArgs (command));
-            }
+            connection.Dispose ();
         }
 
 #endregion
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ICacheableDatabaseModel.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ICacheableDatabaseModel.cs
index c0768ee..7278033 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ICacheableDatabaseModel.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/ICacheableDatabaseModel.cs
@@ -26,8 +26,6 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-using System.Data;
-
 using Hyena.Data;
 
 namespace Hyena.Data.Sqlite
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Sqlite.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Sqlite.cs
new file mode 100644
index 0000000..9bbb0d2
--- /dev/null
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Sqlite.cs
@@ -0,0 +1,728 @@
+//
+// Sqlite.cs
+//
+// Authors:
+//   Gabriel Burt <gburt at novell.com>
+//
+// Copyright (C) 2010 Novell, Inc.
+//
+// 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 above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// 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.
+//
+
+using System;
+using System.Linq;
+using System.Text;
+using System.Collections;
+using System.Collections.Generic;
+using System.Runtime.InteropServices;
+
+using Hyena;
+
+namespace Hyena.Data.Sqlite
+{
+    public class Connection : IDisposable
+    {
+        IntPtr ptr;
+        internal IntPtr Ptr { get { return ptr; } }
+
+        internal List<Statement> Statements = new List<Statement> ();
+
+        public string DbPath { get; private set; }
+
+        public long LastInsertRowId {
+            get { return Native.sqlite3_last_insert_rowid (Ptr); }
+        }
+
+        public Connection (string dbPath)
+        {
+            DbPath = dbPath;
+            CheckError (Native.sqlite3_open (Native.GetUtf8Bytes (dbPath), out ptr));
+            if (ptr == IntPtr.Zero)
+                throw new Exception ("Unable to open connection");
+
+            Native.sqlite3_extended_result_codes (ptr, 1);
+
+            AddFunction<BinaryFunction> ();
+            AddFunction<CollationKeyFunction> ();
+            AddFunction<SearchKeyFunction> ();
+            AddFunction<Md5Function> ();
+        }
+
+        public void Dispose ()
+        {
+            if (ptr != IntPtr.Zero) {
+                lock (Statements) {
+                    var stmts = Statements.ToArray ();
+
+                    if (stmts.Length > 0)
+                        Hyena.Log.DebugFormat ("Connection disposing of {0} remaining statements", stmts.Length);
+
+                    foreach (var stmt in stmts) {
+                        stmt.Dispose ();
+                    }
+                }
+
+                CheckError (Native.sqlite3_close (ptr));
+                ptr = IntPtr.Zero;
+            }
+        }
+
+        ~Connection ()
+        {
+            Dispose ();
+        }
+
+        internal void CheckError (int errorCode)
+        {
+            CheckError (errorCode, "");
+        }
+
+        internal void CheckError (int errorCode, string sql)
+        {
+            if (errorCode == 0 || errorCode == 100 || errorCode == 101)
+                return;
+
+            string errmsg = Native.sqlite3_errmsg16 (Ptr).PtrToString ();
+            if (sql != null) {
+                errmsg = String.Format ("{0} (SQL: {1})", errmsg, sql);
+            }
+
+            throw new SqliteException (errorCode, errmsg);
+        }
+
+        public Statement CreateStatement (string sql)
+        {
+            return new Statement (this, sql);
+        }
+
+        public QueryReader Query (string sql)
+        {
+            return new Statement (this, sql) { ReaderDisposes = true }.Query ();
+        }
+
+        public T Query<T> (string sql)
+        {
+            using (var stmt = new Statement (this, sql)) {
+                return stmt.Query<T> ();
+            }
+        }
+
+        public void Execute (string sql)
+        {
+            // TODO
+            // * The application must insure that the 1st parameter to sqlite3_exec() is a valid and open database connection.
+            // * The application must not close database connection specified by the 1st parameter to sqlite3_exec() while sqlite3_exec() is running.
+            // * The application must not modify the SQL statement text passed into the 2nd parameter of sqlite3_exec() while sqlite3_exec() is running. 
+            CheckError (Native.sqlite3_exec (Ptr, Native.GetUtf8Bytes (sql), IntPtr.Zero, IntPtr.Zero, IntPtr.Zero), sql);
+        }
+
+        // We need to keep a managed ref to the function objects we create so
+        // they won't get GC'd
+        List<SqliteFunction> functions = new List<SqliteFunction> ();
+
+        const int UTF16 = 4;
+        public void AddFunction<T> () where T : SqliteFunction
+        {
+            var type = typeof (T);
+            var pr = (SqliteFunctionAttribute)type.GetCustomAttributes (typeof (SqliteFunctionAttribute), false).First ();
+            var f = (SqliteFunction) Activator.CreateInstance (typeof (T));
+
+            f._InvokeFunc = (pr.FuncType == FunctionType.Scalar) ? new SqliteCallback(f.ScalarCallback) : null;
+            f._StepFunc = (pr.FuncType == FunctionType.Aggregate) ? new SqliteCallback(f.StepCallback) : null;
+            f._FinalFunc = (pr.FuncType == FunctionType.Aggregate) ? new SqliteFinalCallback(f.FinalCallback) : null;
+            f._CompareFunc = (pr.FuncType == FunctionType.Collation) ? new SqliteCollation(f.CompareCallback) : null;
+
+            if (pr.FuncType != FunctionType.Collation) {
+                CheckError (Native.sqlite3_create_function16 (
+                    ptr, pr.Name, pr.Arguments, UTF16, IntPtr.Zero,
+                    f._InvokeFunc, f._StepFunc, f._FinalFunc
+                ));
+            } else {
+                CheckError (Native.sqlite3_create_collation16 (
+                    ptr, pr.Name, UTF16, IntPtr.Zero, f._CompareFunc
+                ));
+            }
+            functions.Add (f);
+        }
+
+        public void RemoveFunction<T> () where T : SqliteFunction
+        {
+            var type = typeof (T);
+            var pr = (SqliteFunctionAttribute)type.GetCustomAttributes (typeof (SqliteFunctionAttribute), false).First ();
+            if (pr.FuncType != FunctionType.Collation) {
+                CheckError (Native.sqlite3_create_function16 (
+                    ptr, pr.Name, pr.Arguments, UTF16, IntPtr.Zero,
+                    null, null, null
+                ));
+            } else {
+                CheckError (Native.sqlite3_create_collation16 (
+                    ptr, pr.Name, UTF16, IntPtr.Zero, null
+                ));
+            }
+
+            var func = functions.FirstOrDefault (f => f is T);
+            if (func != null) {
+                functions.Remove (func);
+            }
+        }
+    }
+
+    public class SqliteException : Exception
+    {
+        public int ErrorCode { get; private set; }
+
+        public SqliteException (int errorCode, string message) : base (String.Format ("Sqlite error {0}: {1}", errorCode, message))
+        {
+            ErrorCode = errorCode;
+        }
+    }
+
+    public interface IDataReader : IDisposable
+    {
+        bool Read ();
+        object this[int i] { get; }
+        object this[string columnName] { get; }
+        T Get<T> (int i);
+        T Get<T> (string columnName);
+        object Get (int i, Type asType);
+        int FieldCount { get; }
+        string [] FieldNames { get; }
+    }
+
+    public class Statement : IDisposable, IEnumerable<IDataReader>
+    {
+        IntPtr ptr;
+        Connection connection;
+        bool bound;
+        QueryReader reader;
+        bool disposed;
+
+        internal bool Reading { get; set; }
+        internal IntPtr Ptr { get { return ptr; } }
+        internal bool Bound { get { return bound; } }
+        internal Connection Connection { get { return connection; } }
+
+        public bool IsDisposed { get { return disposed; } }
+
+        public string CommandText { get; private set; }
+        public int ParameterCount { get; private set; }
+        public bool ReaderDisposes { get; internal set; }
+
+        internal event EventHandler Disposed;
+
+        internal Statement (Connection connection, string sql)
+        {
+            CommandText = sql;
+            this.connection = connection;
+
+            IntPtr pzTail = IntPtr.Zero;
+            CheckError (Native.sqlite3_prepare16_v2 (connection.Ptr, sql, -1, out ptr, out pzTail));
+            
+            lock (Connection.Statements) {
+                Connection.Statements.Add (this);
+            }
+
+            if (pzTail != IntPtr.Zero && Marshal.ReadByte (pzTail) != 0) {
+                Dispose ();
+                throw new ArgumentException ("sql", String.Format ("This sqlite binding does not support multiple commands in one statement:\n  {0}", sql));
+            }
+
+            ParameterCount = Native.sqlite3_bind_parameter_count (ptr);
+            reader = new QueryReader () { Statement = this };
+        }
+
+        internal void CheckReading ()
+        {
+            CheckDisposed ();
+            if (!Reading) {
+                throw new InvalidOperationException ("Statement is not readable");
+            }
+        }
+
+        internal void CheckDisposed ()
+        {
+            if (disposed) {
+                throw new InvalidOperationException ("Statement is disposed");
+            }
+        }
+
+        private string ShortSql { get { return CommandText.Substring (0, Math.Min (CommandText.Length, 20)); } }
+
+        public void Dispose ()
+        {
+            if (disposed)
+                return;
+
+            disposed = true;
+            if (ptr != IntPtr.Zero) {
+                // Don't check for error here, because if the most recent evaluation had an error finalize will return it too
+                // See http://sqlite.org/c3ref/finalize.html
+                Native.sqlite3_finalize (ptr);
+
+                ptr = IntPtr.Zero;
+
+                lock (Connection.Statements) {
+                    Connection.Statements.Remove (this);
+                }
+
+                var h = Disposed;
+                if (h != null) {
+                    h (this, EventArgs.Empty);
+                }
+            }
+        }
+
+        ~Statement ()
+        {
+            Dispose ();
+        }
+
+        object [] null_val = new object [] { null };
+        public Statement Bind (params object [] vals)
+        {
+            Reset ();
+
+            if (vals == null && ParameterCount == 1)
+                vals = null_val;
+
+            if (vals == null || vals.Length != ParameterCount || ParameterCount == 0)
+                throw new ArgumentException ("vals", String.Format ("Statement has {0} parameters", ParameterCount));
+
+            for (int i = 1; i <= vals.Length; i++) {
+                int code = 0;
+                object o = SqliteUtils.ToDbFormat (vals[i - 1]);
+
+                if (o == null)
+                    code = Native.sqlite3_bind_null (Ptr, i);
+                else if (o is double)
+                    code = Native.sqlite3_bind_double (Ptr, i, (double)o);
+                else if (o is float)
+                    code = Native.sqlite3_bind_double (Ptr, i, (double)(float)o);
+                else if (o is int)
+                    code = Native.sqlite3_bind_int (Ptr, i, (int)o);
+                else if (o is uint)
+                    code = Native.sqlite3_bind_int (Ptr, i, (int)(uint)o);
+                else if (o is long)
+                    code = Native.sqlite3_bind_int64 (Ptr, i, (long)o);
+                else if (o is ulong)
+                    code = Native.sqlite3_bind_int64 (Ptr, i, (long)(ulong)o);
+                else if (o is byte[]) {
+                    byte [] bytes = o as byte[];
+                    code = Native.sqlite3_bind_blob (Ptr, i, bytes, bytes.Length, (IntPtr)(-1));
+                } else {
+                    // C# strings are UTF-16, so 2 bytes per char
+                    // -1 for the last arg is the TRANSIENT destructor type so that sqlite will make its own copy of the string
+                    string str = (o as string) ?? o.ToString ();
+                    code = Native.sqlite3_bind_text16 (Ptr, i, str, str.Length * 2, (IntPtr)(-1));
+                }
+
+                CheckError (code);
+            }
+
+            bound = true;
+            return this;
+        }
+
+        internal void CheckError (int code)
+        {
+            connection.CheckError (code, CommandText);
+        }
+
+        private void Reset ()
+        {
+            CheckDisposed ();
+            if (Reading) {
+                throw new InvalidOperationException ("Can't reset statement while it's being read; make sure to Dispose any IDataReaders");
+            }
+
+            CheckError (Native.sqlite3_reset (ptr));
+        }
+
+        public IEnumerator<IDataReader> GetEnumerator ()
+        {
+            Reset ();
+            while (reader.Read ()) {
+                yield return reader;
+            }
+        }
+
+        IEnumerator IEnumerable.GetEnumerator ()
+        {
+            return GetEnumerator ();
+        }
+
+        public Statement Execute ()
+        {
+            Reset ();
+            using (reader) {
+                reader.Read ();
+            }
+            return this;
+        }
+
+        public T Query<T> ()
+        {
+            Reset ();
+            using (reader) {
+                return reader.Read () ? reader.Get<T> (0) : (T) SqliteUtils.FromDbFormat <T> (null);
+            }
+        }
+
+        public QueryReader Query ()
+        {
+            Reset ();
+            return reader;
+        }
+    }
+
+    public class QueryReader : IDataReader
+    {
+        Dictionary<string, int> columns;
+        int column_count = -1;
+
+        internal Statement Statement { get; set; }
+        IntPtr Ptr { get { return Statement.Ptr; } }
+
+        public void Dispose ()
+        {
+            Statement.Reading = false;
+            if (Statement.ReaderDisposes) {
+                Statement.Dispose ();
+            }
+        }
+
+        public int FieldCount {
+            get {
+                if (column_count == -1) {
+                    Statement.CheckDisposed ();
+                    column_count = Native.sqlite3_column_count (Ptr);
+                }
+                return column_count;
+            }
+        }
+
+        string [] field_names;
+        public string [] FieldNames {
+            get {
+                if (field_names == null) {
+                    field_names = Columns.Keys.OrderBy (f => Columns[f]).ToArray ();
+                }
+                return field_names;
+            }
+        }
+
+        public bool Read ()
+        {
+            Statement.CheckDisposed ();
+            if (Statement.ParameterCount > 0 && !Statement.Bound)
+                throw new InvalidOperationException ("Statement not bound");
+
+            int code = Native.sqlite3_step (Ptr);
+            if (code == ROW) {
+                Statement.Reading = true;
+                return true;
+            } else {
+                Statement.Reading = false;
+                Statement.CheckError (code);
+                return false;
+            }
+        }
+
+        public object this[int i] {
+            get {
+                Statement.CheckReading ();
+                int type = Native.sqlite3_column_type (Ptr, i);
+                switch (type) {
+                    case SQLITE_INTEGER:
+                        return Native.sqlite3_column_int64 (Ptr, i);
+                    case SQLITE_FLOAT:
+                        return Native.sqlite3_column_double (Ptr, i);
+                    case SQLITE3_TEXT:
+                        return Native.sqlite3_column_text16 (Ptr, i).PtrToString ();
+                    case SQLITE_BLOB:
+                        int num_bytes = Native.sqlite3_column_bytes (Ptr, i);
+                        if (num_bytes == 0)
+                            return null;
+
+                        byte [] bytes = new byte[num_bytes];
+                        Marshal.Copy (Native.sqlite3_column_blob (Ptr, i), bytes, 0, num_bytes);
+                        return bytes;
+                    case SQLITE_NULL:
+                        return null;
+                    default:
+                        throw new Exception (String.Format ("Column is of unknown type {0}", type));
+                }
+            }
+        }
+
+        public object this[string columnName] {
+            get { return this[GetColumnIndex (columnName)]; }
+        }
+
+        public T Get<T> (int i)
+        {
+            return (T) Get (i, typeof(T));
+        }
+
+        public object Get (int i, Type asType)
+        {
+            return GetAs (this[i], asType);
+        }
+
+        internal static object GetAs (object o, Type type)
+        {
+            if (o != null && o.GetType () == type)
+                return o;
+
+            if (o == null)
+                o = null;
+            else if (type == typeof(int))
+                o = (int)(long)o;
+            else if (type == typeof(uint))
+                o = (uint)(long)o;
+            else if (type == typeof(ulong))
+                o = (ulong)(long)o;
+            else if (type == typeof(float))
+                o = (float)(double)o;
+
+            if (o != null && o.GetType () == type)
+                return o;
+
+            return SqliteUtils.FromDbFormat (type, o);
+        }
+
+        static Type long_type = typeof(long);
+        static Type double_type = typeof(double);
+        static Type [] long_types = { typeof(int), typeof(uint), typeof(ulong) };
+        static Type [] double_types = { typeof(float) };
+        static Type [] self_types = { typeof(string), typeof(byte[]), long_type, double_type};
+
+        static Type DbTypeFor (Type type)
+        {
+            if (long_types.Contains (type))
+                return typeof(int);
+            else if (double_types.Contains (type))
+                return double_type;
+            else if (self_types.Contains (type))
+                return type;
+            else
+                return null;
+        }
+
+        public T Get<T> (string columnName)
+        {
+            return Get<T> (GetColumnIndex (columnName));
+        }
+
+        private Dictionary<string, int> Columns {
+            get {
+                if (columns == null) {
+                    columns = new Dictionary<string, int> ();
+                    for (int i = 0; i < FieldCount; i++) {
+                        columns[Native.sqlite3_column_name16 (Ptr, i).PtrToString ()] = i;
+                    }
+                }
+                return columns;
+            }
+        }
+
+        private int GetColumnIndex (string columnName)
+        {
+            Statement.CheckReading ();
+
+            int col = 0;
+            if (!Columns.TryGetValue (columnName, out col))
+                throw new ArgumentException ("columnName");
+            return col;
+        }
+
+        const int SQLITE_INTEGER = 1;
+        const int SQLITE_FLOAT   = 2;
+        const int SQLITE3_TEXT   = 3;
+        const int SQLITE_BLOB    = 4;
+        const int SQLITE_NULL    = 5;
+
+        const int ROW = 100;
+        const int DONE = 101;
+    }
+
+    internal static class Native
+    {
+        const string SQLITE_DLL = "sqlite3";
+
+        // Connection functions
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_open(byte [] utf8DbPath, out IntPtr db);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_close(IntPtr db);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern long sqlite3_last_insert_rowid (IntPtr db);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_busy_timeout(IntPtr db, int ms);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern IntPtr sqlite3_errmsg16(IntPtr db);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern int sqlite3_create_function16(IntPtr db, string strName, int nArgs, int eTextRep, IntPtr app, SqliteCallback func, SqliteCallback funcstep, SqliteFinalCallback funcfinal);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_aggregate_count(IntPtr context);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_aggregate_context(IntPtr context, int nBytes);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern int sqlite3_create_collation16(IntPtr db, string strName, int eTextRep, IntPtr ctx, SqliteCollation fcompare);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_extended_result_codes (IntPtr db, int onoff);
+
+        // Statement functions
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern int sqlite3_prepare16_v2(IntPtr db, string pSql, int nBytes, out IntPtr stmt, out IntPtr ptrRemain);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_step(IntPtr stmt);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_column_count(IntPtr stmt);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_column_name16(IntPtr stmt, int index);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_column_type(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_column_blob(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_column_bytes(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern double sqlite3_column_double(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern long sqlite3_column_int64(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_column_text16(IntPtr stmt, int iCol);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_finalize(IntPtr stmt);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_reset(IntPtr stmt);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_exec(IntPtr db, byte [] sql, IntPtr callback, IntPtr cbArg, IntPtr errPtr);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_parameter_index(IntPtr stmt, byte [] paramName);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_parameter_count(IntPtr stmt);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_blob(IntPtr stmt, int param, byte[] val, int nBytes, IntPtr destructorType);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_double(IntPtr stmt, int param, double val);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_int(IntPtr stmt, int param, int val);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_int64(IntPtr stmt, int param, long val);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_bind_null(IntPtr stmt, int param);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern int sqlite3_bind_text16 (IntPtr stmt, int param, string val, int numBytes, IntPtr destructorType);
+
+        //DllImport(SQLITE_DLL)]
+        //internal static extern int sqlite3_bind_zeroblob(IntPtr stmt, int, int n);
+
+        // Context functions
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_blob(IntPtr context, byte[] value, int nSize, IntPtr pvReserved);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_double(IntPtr context, double value);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_error(IntPtr context, byte[] strErr, int nLen);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_int(IntPtr context, int value);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_int64(IntPtr context, Int64 value);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_null(IntPtr context);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern void sqlite3_result_text(IntPtr context, byte[] value, int nLen, IntPtr pvReserved);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern void sqlite3_result_error16(IntPtr context, string strName, int nLen);
+
+        [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
+        internal static extern void sqlite3_result_text16(IntPtr context, string strName, int nLen, IntPtr pvReserved);
+
+        // Value methods
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_value_blob(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_value_bytes(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern double sqlite3_value_double(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_value_int(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern Int64 sqlite3_value_int64(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern int sqlite3_value_type(IntPtr p);
+
+        [DllImport(SQLITE_DLL)]
+        internal static extern IntPtr sqlite3_value_text16(IntPtr p);
+
+        internal static string PtrToString (this IntPtr ptr)
+        {
+            return System.Runtime.InteropServices.Marshal.PtrToStringUni (ptr);
+        }
+
+        internal static byte [] GetUtf8Bytes (string str)
+        {
+            return Encoding.UTF8.GetBytes (str + '\0');
+        }
+    }
+}
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunction.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunction.cs
new file mode 100644
index 0000000..8057221
--- /dev/null
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunction.cs
@@ -0,0 +1,393 @@
+//
+// Derived from
+// Mono.Data.Sqlite.SQLiteFunction.cs
+//
+// Author(s):
+//   Robert Simpson (robert at blackcastlesoft.com)
+//
+// Adapted and modified for the Mono Project by
+//   Marek Habersack (grendello at gmail.com)
+//
+// Adapted and modified for the Hyena by
+//   Gabriel Burt <gburt at novell.com>
+//
+// Copyright (C) 2006,2010 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2007 Marek Habersack
+//
+// 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 above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// 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.
+//
+
+/********************************************************
+ * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
+ * Written by Robert Simpson (robert at blackcastlesoft.com)
+ *
+ * Released to the public domain, use at your own risk!
+ ********************************************************/
+namespace Hyena.Data.Sqlite
+{
+  using System;
+  using System.Collections;
+  using System.Collections.Generic;
+  using System.Runtime.InteropServices;
+  using System.Globalization;
+
+  /// <summary>
+  /// The type of user-defined function to declare
+  /// </summary>
+  public enum FunctionType
+  {
+    /// <summary>
+    /// Scalar functions are designed to be called and return a result immediately.  Examples include ABS(), Upper(), Lower(), etc.
+    /// </summary>
+    Scalar = 0,
+    /// <summary>
+    /// Aggregate functions are designed to accumulate data until the end of a call and then return a result gleaned from the accumulated data.
+    /// Examples include SUM(), COUNT(), AVG(), etc.
+    /// </summary>
+    Aggregate = 1,
+    /// <summary>
+    /// Collation sequences are used to sort textual data in a custom manner, and appear in an ORDER BY clause.  Typically text in an ORDER BY is
+    /// sorted using a straight case-insensitive comparison function.  Custom collating sequences can be used to alter the behavior of text sorting
+    /// in a user-defined manner.
+    /// </summary>
+    Collation = 2,
+  }
+
+  /// <summary>
+  /// An internal callback delegate declaration.
+  /// </summary>
+  /// <param name="context">Raw context pointer for the user function</param>
+  /// <param name="nArgs">Count of arguments to the function</param>
+  /// <param name="argsptr">A pointer to the array of argument pointers</param>
+  internal delegate void SqliteCallback(IntPtr context, int nArgs, IntPtr argsptr);
+  /// <summary>
+  /// An internal callback delegate declaration.
+  /// </summary>
+  /// <param name="context">Raw context pointer for the user function</param>
+  internal delegate void SqliteFinalCallback(IntPtr context);
+  /// <summary>
+  /// Internal callback delegate for implementing collation sequences
+  /// </summary>
+  /// <param name="len1">Length of the string pv1</param>
+  /// <param name="pv1">Pointer to the first string to compare</param>
+  /// <param name="len2">Length of the string pv2</param>
+  /// <param name="pv2">Pointer to the second string to compare</param>
+  /// <returns>Returns -1 if the first string is less than the second.  0 if they are equal, or 1 if the first string is greater
+  /// than the second.</returns>
+  internal delegate int SqliteCollation(int len1, IntPtr pv1, int len2, IntPtr pv2);
+
+  /// <summary>
+  /// This abstract class is designed to handle user-defined functions easily.  An instance of the derived class is made for each
+  /// connection to the database.
+  /// </summary>
+  /// <remarks>
+  /// Although there is one instance of a class derived from SqliteFunction per database connection, the derived class has no access
+  /// to the underlying connection.  This is necessary to deter implementers from thinking it would be a good idea to make database
+  /// calls during processing.
+  ///
+  /// It is important to distinguish between a per-connection instance, and a per-SQL statement context.  One instance of this class
+  /// services all SQL statements being stepped through on that connection, and there can be many.  One should never store per-statement
+  /// information in member variables of user-defined function classes.
+  ///
+  /// For aggregate functions, always create and store your per-statement data in the contextData object on the 1st step.  This data will
+  /// be automatically freed for you (and Dispose() called if the item supports IDisposable) when the statement completes.
+  /// </remarks>
+  public abstract class SqliteFunction : IDisposable
+  {
+    /// <summary>
+    /// The base connection this function is attached to
+    /// </summary>
+    /// <summary>
+    /// Internal array used to keep track of aggregate function context data
+    /// </summary>
+    private Dictionary<long, object> _contextDataList;
+
+    /// <summary>
+    /// Holds a reference to the callback function for user functions
+    /// </summary>
+    internal SqliteCallback  _InvokeFunc;
+    /// <summary>
+    /// Holds a reference to the callbakc function for stepping in an aggregate function
+    /// </summary>
+    internal SqliteCallback  _StepFunc;
+    /// <summary>
+    /// Holds a reference to the callback function for finalizing an aggregate function
+    /// </summary>
+    internal SqliteFinalCallback  _FinalFunc;
+    /// <summary>
+    /// Holds a reference to the callback function for collation sequences
+    /// </summary>
+    internal SqliteCollation _CompareFunc;
+
+    /// <summary>
+    /// Internal constructor, initializes the function's internal variables.
+    /// </summary>
+    protected SqliteFunction()
+    {
+      _contextDataList = new Dictionary<long, object>();
+    }
+
+    /// <summary>
+    /// Scalar functions override this method to do their magic.
+    /// </summary>
+    /// <remarks>
+    /// Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
+    /// to force them into a certain type.  Therefore the only types you will ever see as parameters are
+    /// DBNull.Value, Int64, Double, String or byte[] array.
+    /// </remarks>
+    /// <param name="args">The arguments for the command to process</param>
+    /// <returns>You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
+    /// you may return an Exception-derived class if you wish to return an error to Sqlite.  Do not actually throw the error,
+    /// just return it!</returns>
+    public virtual object Invoke(object[] args)
+    {
+      return null;
+    }
+
+    /// <summary>
+    /// Aggregate functions override this method to do their magic.
+    /// </summary>
+    /// <remarks>
+    /// Typically you'll be updating whatever you've placed in the contextData field and returning as quickly as possible.
+    /// </remarks>
+    /// <param name="args">The arguments for the command to process</param>
+    /// <param name="stepNumber">The 1-based step number.  This is incrememted each time the step method is called.</param>
+    /// <param name="contextData">A placeholder for implementers to store contextual data pertaining to the current context.</param>
+    public virtual void Step(object[] args, int stepNumber, ref object contextData)
+    {
+    }
+
+    /// <summary>
+    /// Aggregate functions override this method to finish their aggregate processing.
+    /// </summary>
+    /// <remarks>
+    /// If you implemented your aggregate function properly,
+    /// you've been recording and keeping track of your data in the contextData object provided, and now at this stage you should have
+    /// all the information you need in there to figure out what to return.
+    /// NOTE:  It is possible to arrive here without receiving a previous call to Step(), in which case the contextData will
+    /// be null.  This can happen when no rows were returned.  You can either return null, or 0 or some other custom return value
+    /// if that is the case.
+    /// </remarks>
+    /// <param name="contextData">Your own assigned contextData, provided for you so you can return your final results.</param>
+    /// <returns>You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
+    /// you may return an Exception-derived class if you wish to return an error to Sqlite.  Do not actually throw the error,
+    /// just return it!
+    /// </returns>
+    public virtual object Final(object contextData)
+    {
+      return null;
+    }
+
+    /// <summary>
+    /// User-defined collation sequences override this method to provide a custom string sorting algorithm.
+    /// </summary>
+    /// <param name="param1">The first string to compare</param>
+    /// <param name="param2">The second strnig to compare</param>
+    /// <returns>1 if param1 is greater than param2, 0 if they are equal, or -1 if param1 is less than param2</returns>
+    public virtual int Compare(string param1, string param2)
+    {
+      return 0;
+    }
+
+    /// <summary>
+    /// Converts an IntPtr array of context arguments to an object array containing the resolved parameters the pointers point to.
+    /// </summary>
+    /// <remarks>
+    /// Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
+    /// to force them into a certain type.  Therefore the only types you will ever see as parameters are
+    /// DBNull.Value, Int64, Double, String or byte[] array.
+    /// </remarks>
+    /// <param name="nArgs">The number of arguments</param>
+    /// <param name="argsptr">A pointer to the array of arguments</param>
+    /// <returns>An object array of the arguments once they've been converted to .NET values</returns>
+    internal object[] ConvertParams(int nArgs, IntPtr argsptr)
+    {
+      object[] parms = new object[nArgs];
+      IntPtr[] argint = new IntPtr[nArgs];
+      Marshal.Copy(argsptr, argint, 0, nArgs);
+
+      for (int n = 0; n < nArgs; n++) {
+        IntPtr valPtr = (IntPtr)argint[n];
+        int type = Native.sqlite3_value_type (valPtr);
+        switch (type) {
+            case SQLITE_INTEGER:
+                parms[n] = Native.sqlite3_value_int64 (valPtr);
+                break;
+            case SQLITE_FLOAT:
+                parms[n] = Native.sqlite3_value_double (valPtr);
+                break;
+            case SQLITE3_TEXT:
+                parms[n] = Native.sqlite3_value_text16 (valPtr).PtrToString ();
+                break;
+            case SQLITE_BLOB:
+                parms[n] = Native.sqlite3_value_blob (valPtr);
+                break;
+            case SQLITE_NULL:
+                parms[n] = null;
+                break;
+            default:
+                throw new Exception (String.Format ("Value is of unknown type {0}", type));
+        }
+      }
+      return parms;
+    }
+
+    /// <summary>
+    /// Takes the return value from Invoke() and Final() and figures out how to return it to Sqlite's context.
+    /// </summary>
+    /// <param name="context">The context the return value applies to</param>
+    /// <param name="returnValue">The parameter to return to Sqlite</param>
+    void SetReturnValue(IntPtr context, object r)
+    {
+        if (r is Exception) {
+            Native.sqlite3_result_error16 (context, ((Exception)r).Message, -1);
+        } else {
+            var o = SqliteUtils.ToDbFormat (r);
+            if (o == null)
+                Native.sqlite3_result_null (context);
+            else if (r is int || r is uint)
+                Native.sqlite3_result_int (context, (int)r);
+            else if (r is long || r is ulong)
+                Native.sqlite3_result_int64 (context, (long)r);
+            else if (r is double || r is float)
+                Native.sqlite3_result_double (context, (double)r);
+            else if (r is string) {
+                string str = (string)r;
+                // -1 for the last arg is the TRANSIENT destructor type so that sqlite will make its own copy of the string
+                Native.sqlite3_result_text16 (context, str, str.Length*2, (IntPtr)(-1));
+            } else if (r is byte[]) {
+                var bytes = (byte[])r;
+                Native.sqlite3_result_blob (context, bytes, bytes.Length, (IntPtr)(-1));
+            }
+        }
+    }
+
+    /// <summary>
+    /// Internal scalar callback function, which wraps the raw context pointer and calls the virtual Invoke() method.
+    /// </summary>
+    /// <param name="context">A raw context pointer</param>
+    /// <param name="nArgs">Number of arguments passed in</param>
+    /// <param name="argsptr">A pointer to the array of arguments</param>
+    internal void ScalarCallback(IntPtr context, int nArgs, IntPtr argsptr)
+    {
+      SetReturnValue(context, Invoke(ConvertParams(nArgs, argsptr)));
+    }
+
+    /// <summary>
+    /// Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function.
+    /// </summary>
+    /// <param name="len1">Length of the string pv1</param>
+    /// <param name="ptr1">Pointer to the first string to compare</param>
+    /// <param name="len2">Length of the string pv2</param>
+    /// <param name="ptr2">Pointer to the second string to compare</param>
+    /// <returns>Returns -1 if the first string is less than the second.  0 if they are equal, or 1 if the first string is greater
+    /// than the second.</returns>
+    internal int CompareCallback(int len1, IntPtr ptr1, int len2, IntPtr ptr2)
+    {
+      return Compare(ptr1.PtrToString (), ptr2.PtrToString ());
+    }
+
+    /// <summary>
+    /// The internal aggregate Step function callback, which wraps the raw context pointer and calls the virtual Step() method.
+    /// </summary>
+    /// <remarks>
+    /// This function takes care of doing the lookups and getting the important information put together to call the Step() function.
+    /// That includes pulling out the user's contextData and updating it after the call is made.  We use a sorted list for this so
+    /// binary searches can be done to find the data.
+    /// </remarks>
+    /// <param name="context">A raw context pointer</param>
+    /// <param name="nArgs">Number of arguments passed in</param>
+    /// <param name="argsptr">A pointer to the array of arguments</param>
+    internal void StepCallback(IntPtr context, int nArgs, IntPtr argsptr)
+    {
+      int n = Native.sqlite3_aggregate_count (context);
+      long nAux;
+      object obj = null;
+
+      nAux = (long)Native.sqlite3_aggregate_context (context, 1);
+      if (n > 1) obj = _contextDataList[nAux];
+
+      Step(ConvertParams(nArgs, argsptr), n, ref obj);
+      _contextDataList[nAux] = obj;
+    }
+
+    /// <summary>
+    /// An internal aggregate Final function callback, which wraps the context pointer and calls the virtual Final() method.
+    /// </summary>
+    /// <param name="context">A raw context pointer</param>
+    internal void FinalCallback(IntPtr context)
+    {
+      long n = (long)Native.sqlite3_aggregate_context (context, 1);
+      object obj = null;
+
+      if (_contextDataList.ContainsKey(n))
+      {
+        obj = _contextDataList[n];
+        _contextDataList.Remove(n);
+      }
+
+      SetReturnValue(context, Final(obj));
+
+      IDisposable disp = obj as IDisposable;
+      if (disp != null) disp.Dispose();
+    }
+
+    /// <summary>
+    /// Placeholder for a user-defined disposal routine
+    /// </summary>
+    /// <param name="disposing">True if the object is being disposed explicitly</param>
+    protected virtual void Dispose(bool disposing)
+    {
+    }
+
+    /// <summary>
+    /// Disposes of any active contextData variables that were not automatically cleaned up.  Sometimes this can happen if
+    /// someone closes the connection while a DataReader is open.
+    /// </summary>
+    public void Dispose()
+    {
+      Dispose(true);
+
+      IDisposable disp;
+
+      foreach (KeyValuePair<long, object> kv in _contextDataList)
+      {
+        disp = kv.Value as IDisposable;
+        if (disp != null)
+          disp.Dispose();
+      }
+      _contextDataList.Clear();
+
+      _InvokeFunc = null;
+      _StepFunc = null;
+      _FinalFunc = null;
+      _CompareFunc = null;
+      _contextDataList = null;
+
+      GC.SuppressFinalize(this);
+    }
+
+    const int SQLITE_INTEGER = 1;
+    const int SQLITE_FLOAT   = 2;
+    const int SQLITE3_TEXT   = 3;
+    const int SQLITE_BLOB    = 4;
+    const int SQLITE_NULL    = 5;
+  }
+}
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunctionAttribute.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunctionAttribute.cs
new file mode 100644
index 0000000..29db318
--- /dev/null
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteFunctionAttribute.cs
@@ -0,0 +1,81 @@
+//
+// Derived from
+// Mono.Data.Sqlite.SQLiteFunctionAttribute.cs
+//
+// Author(s):
+//   Robert Simpson (robert at blackcastlesoft.com)
+//
+// Adapted and modified for the Mono Project by
+//   Marek Habersack (grendello at gmail.com)
+//
+//
+// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2007 Marek Habersack
+//
+// 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 above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// 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.
+//
+
+/********************************************************
+ * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
+ * Written by Robert Simpson (robert at blackcastlesoft.com)
+ *
+ * Released to the public domain, use at your own risk!
+ ********************************************************/
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Hyena.Data.Sqlite
+{
+    /// <summary>
+    /// A simple custom attribute to enable us to easily find user-defined functions in
+    /// the loaded assemblies and initialize them in Sqlite as connections are made.
+    /// </summary>
+    [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = true)]
+    public class SqliteFunctionAttribute : Attribute
+    {
+        internal Type        _instanceType;
+
+        /// <summary>
+        /// Default constructor, initializes the internal variables for the function.
+        /// </summary>
+        public SqliteFunctionAttribute()
+        {
+            Name = "";
+            Arguments = -1;
+            FuncType = FunctionType.Scalar;
+            }
+
+        /// <summary>
+        /// The function's name as it will be used in Sqlite command text.
+        /// </summary>
+        public string Name { get; set; }
+
+        /// <summary>
+        /// The number of arguments this function expects.  -1 if the number of arguments is variable.
+        /// </summary>
+        public int Arguments { get; set; }
+
+        /// <summary>
+        /// The type of function this implementation will be.
+        /// </summary>
+        public FunctionType FuncType { get; set; }
+    }
+}
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelCache.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelCache.cs
index e184e60..5fd7c94 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelCache.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelCache.cs
@@ -29,7 +29,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 using System.Text;
 
 using Hyena.Query;
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelProvider.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelProvider.cs
index 073467f..28f1a5b 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelProvider.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteModelProvider.cs
@@ -28,7 +28,6 @@
 
 using System;
 using System.Collections.Generic;
-using System.Data;
 using System.Reflection;
 using System.Text;
 
@@ -143,7 +142,7 @@ namespace Hyena.Data.Sqlite
             if (connection.TableExists (HyenaTableName)) {
                 using (IDataReader reader = connection.Query (SelectVersionSql (TableName))) {
                     if (reader.Read ()) {
-                        int table_version = reader.GetInt32 (0);
+                        int table_version = reader.Get<int> (0);
                         if (table_version < ModelVersion) {
                             MigrateTable (table_version);
                             UpdateVersion (TableName, ModelVersion);
@@ -361,14 +360,14 @@ namespace Hyena.Data.Sqlite
 
             AbstractDatabaseColumn bad_column = null;
             try {
-                foreach (DatabaseColumn column in select_columns) {
+                foreach (var column in select_columns) {
                     bad_column = column;
-                    column.SetValue (target, reader, i++);
+                    column.SetValue (target, reader.Get (i++, column.ValueType));
                 }
 
-                foreach (VirtualDatabaseColumn column in virtual_columns) {
+                foreach (var column in virtual_columns) {
                     bad_column = column;
-                    column.SetValue (target, reader, i++);
+                    column.SetValue (target, reader.Get (i++, column.ValueType));
                 }
             } catch (Exception e) {
                 Log.Debug (
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteUtils.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteUtils.cs
index 31a8626..3f3ebe9 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteUtils.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/SqliteUtils.cs
@@ -29,7 +29,6 @@
 using System;
 using System.Reflection;
 using System.Text;
-using Mono.Data.Sqlite;
 using System.Collections.Generic;
 
 namespace Hyena.Data.Sqlite
@@ -58,6 +57,14 @@ namespace Hyena.Data.Sqlite
             }
         }
 
+        public static object ToDbFormat (object value)
+        {
+            if (value == null)
+                return null;
+
+            return ToDbFormat (value.GetType (), value);
+        }
+
         public static object ToDbFormat (Type type, object value)
         {
             if (type == typeof (string)) {
@@ -73,36 +80,47 @@ namespace Hyena.Data.Sqlite
                 return TimeSpan.MinValue.Equals ((TimeSpan)value)
                     ? (object)null
                     : ((TimeSpan)value).TotalMilliseconds;
-            } else if (type.IsEnum) {
-                return Convert.ChangeType (value, Enum.GetUnderlyingType (type));
             } else if (type == typeof (bool)) {
                 return ((bool)value) ? 1 : 0;
+            } else if (enum_types.Contains (type)) {
+                return Convert.ChangeType (value, Enum.GetUnderlyingType (type));
+            } else if (type.IsEnum) {
+                enum_types.Add (type);
+                return Convert.ChangeType (value, Enum.GetUnderlyingType (type));
             }
 
             return value;
         }
 
+        public static T FromDbFormat<T> (object value)
+        {
+            object o = FromDbFormat (typeof(T), value);
+            return o == null ? default(T) : (T)o;
+        }
+
         public static object FromDbFormat (Type type, object value)
         {
             if (Convert.IsDBNull (value))
                 value = null;
 
             if (type == typeof (DateTime)) {
-                return value == null
-                    ? DateTime.MinValue
-                    : DateTimeUtil.ToDateTime (Convert.ToInt64 (value));
+                if (value == null)
+                    return DateTime.MinValue;
+                else if (!(value is long))
+                    value = Convert.ToInt64 (value);
+                return DateTimeUtil.ToDateTime ((long)value);
             } else if (type == typeof (TimeSpan)) {
-                return value == null
-                    ? TimeSpan.MinValue
-                    : TimeSpan.FromMilliseconds (Convert.ToInt64 (value));
+                if (value == null)
+                    return TimeSpan.MinValue;
+                else if (!(value is long))
+                    value = Convert.ToInt64 (value);
+                return TimeSpan.FromMilliseconds ((long)value);
             } else if (value == null) {
                 if (type.IsValueType) {
                     return Activator.CreateInstance (type);
                 } else {
                     return null;
                 }
-            } else if (type.IsEnum) {
-                return Enum.ToObject (type, value);
             } else if (type == typeof (bool)) {
                 return ((long)value == 1);
             } else if (type == typeof (double?)) {
@@ -111,6 +129,8 @@ namespace Hyena.Data.Sqlite
 
                 double double_value = ((Single?) value).Value;
                 return (double?) double_value;
+            } else if (type.IsEnum) {
+                return Enum.ToObject (type, value);
             } else {
                 return Convert.ChangeType (value, type);
             }
@@ -138,6 +158,8 @@ namespace Hyena.Data.Sqlite
             }
             return builder.ToString ();
         }
+
+        static HashSet<Type> enum_types = new HashSet<Type> ();
     }
 
     [SqliteFunction (Name = "HYENA_BINARY_FUNCTION", FuncType = FunctionType.Scalar, Arguments = 3)]
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs
index e212010..7885902 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs
@@ -95,23 +95,6 @@ namespace Hyena.Data.Sqlite.Tests
                     GetGeneratedSql (cmd3, new int [] {1, 2, 4}, new string [] {"foo", "baz"}));
         }
 
-        [Test]
-        public void ExecuteMustDisposeSqliteCommand ()
-        {
-            using(var connection = new HyenaSqliteConnection (":memory:")) {
-                bool disposed = false;
-                connection.Executing += delegate (object sender, ExecutingEventArgs args) {
-                    args.Command.Disposed += delegate {
-                        disposed = true;
-                    };
-                };
-
-                connection.Query<int> ("SELECT 42");
-
-                Assert.IsTrue (disposed);
-            }
-        }
-
         static PropertyInfo tf = typeof(HyenaSqliteCommand).GetProperty ("CurrentSqlText", BindingFlags.Instance | BindingFlags.NonPublic);
         private static string GetGeneratedSql (HyenaSqliteCommand cmd, params object [] p)
         {
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs
index 7b12c5d..18c553c 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs
@@ -29,7 +29,6 @@
 #if ENABLE_TESTS
 
 using System;
-using System.Data;
 using System.IO;
 using NUnit.Framework;
 using Hyena.Data.Sqlite;
@@ -172,7 +171,7 @@ namespace Hyena.Data.Sqlite.Tests
 
             using (IDataReader reader = connection.Query (command)) {
                 reader.Read ();
-                Assert.IsTrue (reader.IsDBNull (0));
+                Assert.IsTrue (reader[0] == null);
             }
 
             DbBoundType loaded_item = provider.FetchSingle (newed_item.PrimaryKey);
@@ -196,7 +195,7 @@ namespace Hyena.Data.Sqlite.Tests
             string command = String.Format ("SELECT PrivateTimeSpanProperty FROM {0} WHERE PrimaryKey = {1}", provider.TableName, newed_item.PrimaryKey);
             using (IDataReader reader = connection.Query (command)) {
                 reader.Read ();
-                Assert.IsTrue (reader.IsDBNull (0));
+                Assert.IsTrue (reader[0] == null);
             }
 
             // NUnit boxes and uses reference equality, rather than Equals()
diff --git a/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteTests.cs b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteTests.cs
new file mode 100644
index 0000000..3dab52f
--- /dev/null
+++ b/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/Tests/SqliteTests.cs
@@ -0,0 +1,478 @@
+//
+// SqliteTests.cs
+//
+// Author:
+//   Gabriel Burt <gburt at novell.com>
+//
+// Copyright (C) 2010 Novell, Inc.
+//
+// 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 above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// 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.
+//
+
+#if ENABLE_TESTS
+
+using System;
+using System.Linq;
+
+using NUnit.Framework;
+using Hyena.Data.Sqlite;
+
+namespace Hyena.Data.Sqlite
+{
+    [TestFixture]
+    public class SqliteTests
+    {
+        Connection con;
+        Statement select_literal;
+        string dbfile = "hyena-data-sqlite-test.db";
+
+        [SetUp]
+        public void Setup ()
+        {
+            con = new Connection (dbfile);
+            select_literal = con.CreateStatement ("SELECT ?");
+        }
+
+        [TearDown]
+        public void TearDown ()
+        {
+            select_literal.Dispose ();
+            Assert.AreEqual (0, con.Statements.Count);
+            con.Dispose ();
+            System.IO.File.Delete (dbfile);
+        }
+
+        [Test]
+        public void TestBindWhileReading ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT ? as version")) {
+                stmt.Bind (7);
+                var reader = stmt.Query ();
+                Assert.IsTrue (reader.Read ());
+                Assert.AreEqual (7, reader[0]);
+
+                try {
+                    stmt.Bind (6);
+                    Assert.Fail ("Shouldn't be able to bind while a reader is active");
+                } catch {}
+
+                Assert.AreEqual (7, reader[0]);
+                reader.Dispose ();
+
+                stmt.Bind (6);
+                Assert.AreEqual (6, stmt.Query<int> ());
+            }
+        }
+
+        [Test]
+        public void TestQueryWhileReading ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT ? as version")) {
+                stmt.Bind (7);
+                var reader = stmt.Query ();
+                Assert.IsTrue (reader.Read ());
+                Assert.AreEqual (7, reader[0]);
+
+                try {
+                    stmt.Execute ();
+                    Assert.Fail ("Shouldn't be able to query while a reader is active");
+                } catch {}
+
+                try {
+                    stmt.Query ();
+                    Assert.Fail ("Shouldn't be able to query while a reader is active");
+                } catch {}
+
+                try {
+                    stmt.Query<int> ();
+                    Assert.Fail ("Shouldn't be able to query while a reader is active");
+                } catch {}
+
+                Assert.AreEqual (7, reader[0]);
+                reader.Dispose ();
+
+                stmt.Bind (6);
+                Assert.AreEqual (6, stmt.Query<int> ());
+            }
+        }
+
+        [Test]
+        public void Test ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT 'foobar' as version")) {
+                Assert.AreEqual ("foobar", stmt.Query<string> ());
+
+                try {
+                    stmt.Bind ();
+                    Assert.Fail ("should not be able to bind parameterless statement");
+                } catch {}
+            }
+
+            using (var stmt = con.CreateStatement ("SELECT 2 + 5 as res")) {
+                using (var reader = stmt.Query ()) {
+                    Assert.IsTrue (reader.Read ());
+                    Assert.AreEqual (7, reader.Get<int> (0));
+                    Assert.AreEqual (7, reader[0]);
+                    Assert.AreEqual (7, reader["res"]);
+                }
+            }
+        }
+
+        [Test]
+        public void TestBinding ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT ? as version")) {
+                try {
+                    stmt.First ();
+                    Assert.Fail ("unbound statement should have thrown an exception");
+                } catch {}
+
+                try {
+                    stmt.Bind (1, 2);
+                    Assert.Fail ("bound statement with the wrong number of parameters");
+                } catch {}
+
+                try {
+                    stmt.Bind ();
+                    Assert.Fail ("bound statement with the wrong number of parameters");
+                } catch {}
+
+                stmt.Bind (21);
+                Assert.AreEqual (21, stmt.Query<int> ());
+
+                stmt.Bind ("ffoooo");
+                using (var reader = stmt.First ()) {
+                    Assert.AreEqual ("ffoooo", reader[0]);
+                    Assert.AreEqual ("ffoooo", reader["version"]);
+                }
+            }
+
+            using (var stmt = con.CreateStatement ("SELECT ? as a, ? as b, ?")) {
+                stmt.Bind (1, "two", 3.3);
+
+                using (var reader = stmt.Query ()) {
+                    Assert.IsTrue (reader.Read ());
+                    Assert.AreEqual (1, reader.Get<int> (0));
+                    Assert.AreEqual ("two", reader["b"]);
+                    Assert.AreEqual ("two", reader.Get<string> ("b"));
+                    Assert.AreEqual ("two", reader.Get<string> (1));
+                    Assert.AreEqual (3.3, reader[2]);
+                }
+            }
+        }
+
+        [Test]
+        public void CreateTable ()
+        {
+            CreateUsers (con);
+
+            using (var stmt = con.CreateStatement ("SELECT COUNT(*) FROM Users")) {
+                Assert.AreEqual (2, stmt.Query<int> ());
+            }
+
+            using (var reader = con.Query ("SELECT ID, Name FROM Users ORDER BY NAME")) {
+                Assert.IsTrue (reader.Read ());
+                Assert.AreEqual ("Aaron", reader["Name"]);
+                Assert.AreEqual ("Aaron", reader[1]);
+                Assert.AreEqual (2, reader["ID"]);
+                Assert.AreEqual (2, reader[0]);
+
+                Assert.IsTrue (reader.Read ());
+                Assert.AreEqual ("Gabriel", reader["Name"]);
+                Assert.AreEqual ("Gabriel", reader[1]);
+                Assert.AreEqual (1, reader["ID"]);
+                Assert.AreEqual (1, reader[0]);
+
+                Assert.IsFalse (reader.Read ());
+            }
+        }
+
+        private void CreateUsers (Connection con)
+        {
+            using (var stmt = con.CreateStatement ("DROP TABLE IF EXISTS Users")) {
+                stmt.Execute ();
+            }
+
+            using (var stmt = con.CreateStatement ("CREATE TABLE Users (ID INTEGER PRIMARY KEY, Name TEXT)")) {
+                stmt.Execute ();
+                try {
+                    stmt.Execute ();
+                    Assert.Fail ("Shouldn't be able to create table; already exists");
+                } catch {}
+            }
+
+            using (var stmt = con.CreateStatement ("INSERT INTO Users (Name) VALUES (?)")) {
+                stmt.Bind ("Gabriel").Execute ();
+                stmt.Bind ("Aaron").Execute ();
+            }
+        }
+
+        [Test]
+        public void CheckInterleavedAccess ()
+        {
+            CreateUsers (con);
+
+            var q1 = con.Query ("SELECT ID, Name FROM Users ORDER BY NAME ASC");
+            var q2 = con.Query ("SELECT ID, Name FROM Users ORDER BY ID ASC");
+
+            Assert.IsTrue (q1.Read ());
+            Assert.IsTrue (q2.Read ());
+            Assert.AreEqual ("Aaron", q1["Name"]);
+            Assert.AreEqual ("Gabriel", q2["Name"]);
+
+            con.Execute ("INSERT INTO Users (Name) VALUES ('Zeus')");
+            Assert.AreEqual (3, con.Query<int> ("SELECT COUNT(*) FROM Users"));
+
+            Assert.IsTrue (q2.Read ());
+            Assert.AreEqual ("Aaron", q2[1]);
+            Assert.IsTrue (q1.Read ());
+            Assert.AreEqual ("Gabriel", q1[1]);
+
+            // The new value is already passed when sorting by Name ASC
+            // But it had ID=3, so it's available to the second query
+            Assert.IsFalse (q1.Read ());
+            Assert.IsTrue (q2.Read ());
+            Assert.AreEqual ("Zeus", q2[1]);
+
+            // Insert a value, see that q2 can see it, then delete it and try to
+            // get the now-deleted value from q2
+            con.Execute ("INSERT INTO Users (Name) VALUES ('Apollo')");
+            Assert.AreEqual (4, con.Query<int> ("SELECT COUNT(*) FROM Users"));
+            Assert.IsTrue (q2.Read ());
+
+            con.Execute ("DELETE FROM Users WHERE Name='Apollo'");
+            Assert.AreEqual (3, con.Query<int> ("SELECT COUNT(*) FROM Users"));
+            Assert.AreEqual ("Apollo", q2[1]);
+            Assert.IsFalse (q2.Read ());
+
+            try {
+                Console.WriteLine (q1[1]);
+                Assert.Fail ("Should have thrown");
+            } catch {}
+
+            q1.Dispose ();
+            q2.Dispose ();
+        }
+
+        [Test]
+        public void ConnectionDisposesStatements ()
+        {
+            var stmt = con.CreateStatement ("SELECT 1");
+            Assert.IsFalse (stmt.IsDisposed);
+            con.Dispose ();
+            Assert.IsTrue (stmt.IsDisposed);
+        }
+
+        [Test]
+        public void MultipleCommands ()
+        {
+            try {
+                using (var stmt = con.CreateStatement ("CREATE TABLE Lusers (ID INTEGER PRIMARY KEY, Name TEXT); INSERT INTO Lusers (Name) VALUES ('Foo')")) {
+                    stmt.Execute ();
+                }
+                Assert.Fail ("Mutliple commands aren't supported in this sqlite binding");
+            } catch {}
+        }
+
+        [Test]
+        public void Query ()
+        {
+            using (var q = con.Query ("SELECT 7")) {
+                int rows = 0;
+                while (q.Read ()) {
+                    Assert.AreEqual (7, q[0]);
+                    rows++;
+                }
+                Assert.AreEqual (1, rows);
+            }
+        }
+
+        [Test]
+        public void QueryScalar ()
+        {
+            Assert.AreEqual (7, con.Query<int> ("SELECT 7"));
+        }
+
+        [Test]
+        public void Execute ()
+        {
+            try {
+                con.Query<int> ("SELECT COUNT(*) FROM Users");
+                Assert.Fail ("Should have thrown an exception");
+            } catch {}
+            con.Execute ("CREATE TABLE Users (ID INTEGER PRIMARY KEY, Name TEXT)");
+            Assert.AreEqual (0, con.Query<int> ("SELECT COUNT(*) FROM Users"));
+        }
+
+        [Test]
+        public void Md5Function ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT HYENA_MD5(?, ?)")) {
+                Assert.AreEqual ("ae2b1fca515949e5d54fb22b8ed95575", stmt.Bind (1, "testing").Query<string> ());
+                Assert.AreEqual (null, stmt.Bind (1, null).Query<string> ());
+            }
+
+            using (var stmt = con.CreateStatement ("SELECT HYENA_MD5(?, ?, ?)")) {
+                Assert.AreEqual ("ae2b1fca515949e5d54fb22b8ed95575", stmt.Bind (2, "test", "ing").Query<string> ());
+                Assert.AreEqual (null, stmt.Bind (2, null, null).Query<string> ());
+            }
+
+            using (var stmt = con.CreateStatement ("SELECT HYENA_MD5(?, ?, ?, ?)")) {
+                Assert.AreEqual (null, stmt.Bind (3, null, "", null).Query<string> ());
+
+                try {
+                    con.RemoveFunction<Md5Function> ();
+                    Assert.Fail ("Removed function while statement active");
+                } catch (SqliteException e) {
+                    Assert.AreEqual (5, e.ErrorCode);
+                }
+            }
+
+            try {
+                using (var stmt = con.CreateStatement ("SELECT HYENA_MD5(?, ?, ?, ?)")) {
+                    Assert.AreEqual ("ae2b1fca515949e5d54fb22b8ed95575", stmt.Query<string> ());
+                    Assert.Fail ("Function HYENA_MD5 should no longer exist");
+                }
+            } catch {}
+
+        }
+
+        [Test]
+        public void SearchKeyFunction ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT HYENA_SEARCH_KEY(?)")) {
+                Assert.AreEqual (null,  stmt.Bind (null).Query<string> ());
+                Assert.AreEqual ("eee", stmt.Bind ("Éee").Query<string> ());
+                Assert.AreEqual ("a",   stmt.Bind ("\u0104").Query<string> ());
+            }
+
+            con.Execute ("SELECT HYENA_SEARCH_KEY('foo')");
+        }
+
+        [Test]
+        public void CollationKeyFunction ()
+        {
+            using (var stmt = con.CreateStatement ("SELECT HYENA_COLLATION_KEY(?)")) {
+                Assert.AreEqual (new byte[] {14, 2, 1, 27, 1, 1, 1, 0}, stmt.Bind ("\u0104").Query<byte[]> ());
+            }
+        }
+
+        [Test]
+        public void DataTypes ()
+        {
+            AssertGetNull<int> (0);
+            AssertRoundTrip<int> (0);
+            AssertRoundTrip<int> (1);
+            AssertRoundTrip<int> (-1);
+            AssertRoundTrip<int> (42);
+            AssertRoundTrip<int> (int.MaxValue);
+            AssertRoundTrip<int> (int.MinValue);
+
+            AssertGetNull<uint> (0);
+            AssertRoundTrip<uint> (0);
+            AssertRoundTrip<uint> (1);
+            AssertRoundTrip<uint> (42);
+            AssertRoundTrip<uint> (uint.MaxValue);
+            AssertRoundTrip<uint> (uint.MinValue);
+
+            AssertGetNull<long> (0);
+            AssertRoundTrip<long> (0);
+            AssertRoundTrip<long> (1);
+            AssertRoundTrip<long> (-1);
+            AssertRoundTrip<long> (42);
+            AssertRoundTrip<long> (long.MaxValue);
+            AssertRoundTrip<long> (long.MinValue);
+
+            AssertGetNull<ulong> (0);
+            AssertRoundTrip<ulong> (0);
+            AssertRoundTrip<ulong> (1);
+            AssertRoundTrip<ulong> (42);
+            AssertRoundTrip<ulong> (ulong.MaxValue);
+            AssertRoundTrip<ulong> (ulong.MinValue);
+
+            AssertGetNull<float> (0f);
+            AssertRoundTrip<float> (0f);
+            AssertRoundTrip<float> (1f);
+            AssertRoundTrip<float> (-1f);
+            AssertRoundTrip<float> (42.222f);
+            AssertRoundTrip<float> (float.MaxValue);
+            AssertRoundTrip<float> (float.MinValue);
+
+            AssertGetNull<double> (0);
+            AssertRoundTrip<double> (0);
+            AssertRoundTrip<double> (1);
+            AssertRoundTrip<double> (-1);
+            AssertRoundTrip<double> (42.222);
+            AssertRoundTrip<double> (double.MaxValue);
+            AssertRoundTrip<double> (double.MinValue);
+
+            AssertGetNull<string> (null);
+            AssertRoundTrip<string> ("a");
+            AssertRoundTrip<string> ("üb€r;&#co¯ol!~`\n\r\t");
+
+            AssertGetNull<byte[]> (null);
+            AssertRoundTrip<byte[]> (new byte [] { 0 });
+            AssertRoundTrip<byte[]> (new byte [] { 0, 1});
+            AssertRoundTrip<byte[]> (System.Text.Encoding.UTF8.GetBytes ("üb€r;&#co¯ol!~`\n\r\t"));
+
+            var ignore_ms = new Func<DateTime, DateTime, bool> ((a, b) => (a - b).TotalSeconds < 1);
+            AssertGetNull<DateTime> (DateTime.MinValue);
+            AssertRoundTrip<DateTime> (new DateTime (1970, 1, 1).ToLocalTime ());
+            AssertRoundTrip<DateTime> (DateTime.Now, ignore_ms);
+            AssertRoundTrip<DateTime> (DateTime.MinValue);
+            // FIXME
+            //AssertRoundTrip<DateTime> (DateTime.MaxValue);
+            Assert.AreEqual (new DateTime (1970, 1, 1).ToLocalTime (), con.Query<DateTime> ("SELECT 0"));
+
+            AssertGetNull<TimeSpan> (TimeSpan.MinValue);
+            AssertRoundTrip<TimeSpan> (TimeSpan.MinValue);
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromSeconds (0));
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromSeconds (0.001));
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromSeconds (0.002));
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromSeconds (0.503));
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromSeconds (1.01));
+            AssertRoundTrip<TimeSpan> (TimeSpan.FromHours (999.00193));
+            // FIXME
+            //AssertRoundTrip<TimeSpan> (TimeSpan.MaxValue);
+        }
+
+        private void AssertRoundTrip<T> (T val)
+        {
+            AssertRoundTrip (val, null);
+        }
+
+        private void AssertRoundTrip<T> (T val, Func<T, T, bool> func)
+        {
+            var o = select_literal.Bind (val).Query<T> ();
+            if (func == null) {
+                Assert.AreEqual (val, o);
+            } else {
+                Assert.IsTrue (func (val, o));
+            }
+        }
+
+        private void AssertGetNull<T> (T val)
+        {
+            Assert.AreEqual (val, select_literal.Bind (null).Query<T> ());
+        }
+    }
+}
+
+#endif
diff --git a/src/Hyena/Hyena.Data.Sqlite/Makefile.am b/src/Hyena/Hyena.Data.Sqlite/Makefile.am
index 2f1d38c..9abb9ef 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Makefile.am
+++ b/src/Hyena/Hyena.Data.Sqlite/Makefile.am
@@ -1,21 +1,24 @@
 ASSEMBLY = Hyena.Data.Sqlite
 TARGET = library
-LINK = -r:Mono.Posix -r:System  -r:System.Core  -r:System.Data \
-	   -r:$(DIR_BIN)/Mono.Data.Sqlite.dll \
-	   -r:$(DIR_BIN)/Hyena.dll
+LINK = -r:Mono.Posix -r:System -r:System.Core -r:$(DIR_BIN)/Hyena.dll
+
 SOURCES =  \
+	Hyena.Data.Sqlite/ArrayDataReader.cs \
 	Hyena.Data.Sqlite/DatabaseColumn.cs \
 	Hyena.Data.Sqlite/DatabaseColumnAttribute.cs \
-	Hyena.Data.Sqlite/HyenaSqliteArrayDataReader.cs \
 	Hyena.Data.Sqlite/HyenaSqliteCommand.cs \
 	Hyena.Data.Sqlite/HyenaSqliteConnection.cs \
 	Hyena.Data.Sqlite/ICacheableDatabaseModel.cs \
+	Hyena.Data.Sqlite/Sqlite.cs \
+	Hyena.Data.Sqlite/SqliteFunction.cs \
+	Hyena.Data.Sqlite/SqliteFunctionAttribute.cs \
 	Hyena.Data.Sqlite/SqliteModelCache.cs \
 	Hyena.Data.Sqlite/SqliteModelProvider.cs \
 	Hyena.Data.Sqlite/SqliteUtils.cs \
 	Hyena.Data.Sqlite/Tests/DbBoundType.cs \
 	Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs \
 	Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs \
+	Hyena.Data.Sqlite/Tests/SqliteTests.cs \
 	Hyena.Data.Sqlite/Tests/SqliteUtilTests.cs \
 	Hyena.Metrics/DbSampleStore.cs \
 	Hyena.Metrics/HttpPoster.cs \
diff --git a/src/Hyena/Hyena.Data.Sqlite/Makefile.in b/src/Hyena/Hyena.Data.Sqlite/Makefile.in
index c7d1de6..bdd3ce2 100644
--- a/src/Hyena/Hyena.Data.Sqlite/Makefile.in
+++ b/src/Hyena/Hyena.Data.Sqlite/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -382,22 +390,25 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 ASSEMBLY = Hyena.Data.Sqlite
 TARGET = library
-LINK = -r:Mono.Posix -r:System -r:System.Core -r:System.Data \
-	-r:$(DIR_BIN)/Mono.Data.Sqlite.dll -r:$(DIR_BIN)/Hyena.dll \
+LINK = -r:Mono.Posix -r:System -r:System.Core -r:$(DIR_BIN)/Hyena.dll \
 	$(am__append_1)
 SOURCES = \
+	Hyena.Data.Sqlite/ArrayDataReader.cs \
 	Hyena.Data.Sqlite/DatabaseColumn.cs \
 	Hyena.Data.Sqlite/DatabaseColumnAttribute.cs \
-	Hyena.Data.Sqlite/HyenaSqliteArrayDataReader.cs \
 	Hyena.Data.Sqlite/HyenaSqliteCommand.cs \
 	Hyena.Data.Sqlite/HyenaSqliteConnection.cs \
 	Hyena.Data.Sqlite/ICacheableDatabaseModel.cs \
+	Hyena.Data.Sqlite/Sqlite.cs \
+	Hyena.Data.Sqlite/SqliteFunction.cs \
+	Hyena.Data.Sqlite/SqliteFunctionAttribute.cs \
 	Hyena.Data.Sqlite/SqliteModelCache.cs \
 	Hyena.Data.Sqlite/SqliteModelProvider.cs \
 	Hyena.Data.Sqlite/SqliteUtils.cs \
 	Hyena.Data.Sqlite/Tests/DbBoundType.cs \
 	Hyena.Data.Sqlite/Tests/SqliteCommandTests.cs \
 	Hyena.Data.Sqlite/Tests/SqliteModelProviderTests.cs \
+	Hyena.Data.Sqlite/Tests/SqliteTests.cs \
 	Hyena.Data.Sqlite/Tests/SqliteUtilTests.cs \
 	Hyena.Metrics/DbSampleStore.cs \
 	Hyena.Metrics/HttpPoster.cs \
@@ -441,12 +452,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -498,7 +505,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -625,14 +632,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/Hyena.Data.Sqlite/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/Hyena.Data.Sqlite/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/Hyena.Data.Sqlite/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/Hyena.Data.Sqlite/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -650,25 +657,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -698,13 +721,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -736,6 +763,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -756,6 +784,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -763,21 +793,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -799,7 +838,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -864,6 +902,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayout.cs b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayout.cs
index 6a7cc1a..3f334a6 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayout.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayout.cs
@@ -78,7 +78,7 @@ namespace Hyena.Data.Gui
         {
             XPosition = x;
             YPosition = y;
-            InvalidateChildLayout ();
+            InvalidateChildLayout (false);
         }
 
         public void ModelUpdated ()
@@ -111,7 +111,12 @@ namespace Hyena.Data.Gui
         protected abstract void InvalidateChildSize ();
         protected abstract void InvalidateVirtualSize ();
         protected abstract void InvalidateChildCollection ();
-        protected virtual void InvalidateChildLayout ()
+        protected void InvalidateChildLayout ()
+        {
+            InvalidateChildLayout (true);
+        }
+
+        protected virtual void InvalidateChildLayout (bool arrange)
         {
             model_indices.Clear ();
         }
diff --git a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayoutGrid.cs b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayoutGrid.cs
index ae56c8b..ef4b14d 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayoutGrid.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/DataViewLayoutGrid.cs
@@ -76,9 +76,9 @@ namespace Hyena.Data.Gui
             }
         }
 
-        protected override void InvalidateChildLayout ()
+        protected override void InvalidateChildLayout (bool arrange)
         {
-            base.InvalidateChildLayout ();
+            base.InvalidateChildLayout (arrange);
 
             if (ChildSize.Width <= 0 || ChildSize.Height <= 0) {
                 // FIXME: empty/reset all child slots here?
@@ -117,7 +117,9 @@ namespace Hyena.Data.Gui
                     child.Bind (Model.GetItem (i));
                 }
 
-                child.Arrange ();
+                if (arrange) {
+                    child.Arrange ();
+                }
 
                 // Update the allocation for the next child
                 if (++view_column_index % Columns == 0) {
@@ -142,6 +144,7 @@ namespace Hyena.Data.Gui
 
             var child = ChildAllocator ();
             child.Manager = CanvasManager;
+            child.Measure (Size.Empty);
             //child.ParentLayout = this;
             return child;
         }
diff --git a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Accessible.cs b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Accessible.cs
index 1646e9b..e6e9869 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Accessible.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Accessible.cs
@@ -40,6 +40,10 @@ namespace Hyena.Data.Gui
 {
     public partial class ListView<T> : ListViewBase
     {
+#if ENABLE_ATK
+        internal ListViewAccessible<T> accessible;
+#endif
+
         static ListView ()
         {
 #if ENABLE_ATK
@@ -146,10 +150,11 @@ namespace Hyena.Data.Gui
 
         private void AccessibleCellRedrawn (int column, int row)
         {
-            var accessible = Accessible as ICellAccessibleParent;
+#if ENABLE_ATK
             if (accessible != null) {
                 accessible.CellRedrawn (column, row);
             }
+#endif
         }
 
     }
@@ -165,7 +170,10 @@ namespace Hyena.Data.Gui
 
         protected override Atk.Object OnCreateAccessible (GLib.Object obj)
         {
-            return new ListViewAccessible<T> (obj);
+            Log.InformationFormat ("Creating Accessible for {0}", obj);
+            var accessible = new ListViewAccessible<T> (obj);
+            (obj as ListView<T>).accessible = accessible;
+            return accessible;
         }
 
         protected override GLib.GType OnGetAccessibleType ()
diff --git a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Model.cs b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Model.cs
index aa384a6..05290d3 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Model.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Model.cs
@@ -65,11 +65,17 @@ namespace Hyena.Data.Gui
                 IsEverReorderable = model.CanReorder;
             }
 
+            if (ViewLayout != null) {
+                ViewLayout.Model = Model;
+            }
+
             ISortable sortable = model as ISortable;
             if (sortable != null && ColumnController != null) {
                 ISortableColumn sort_column = ColumnController.SortColumn ?? ColumnController.DefaultSortColumn;
                 if (sort_column != null) {
-                    sortable.Sort (sort_column);
+                    if (sortable.Sort (sort_column)) {
+                        model.Reload ();
+                    }
                     RecalculateColumnSizes ();
                     RegenerateColumnCache ();
                     InvalidateHeader ();
@@ -77,10 +83,6 @@ namespace Hyena.Data.Gui
                 }
             }
 
-            if (ViewLayout != null) {
-                ViewLayout.Model = Model;
-            }
-
             RefreshViewForModel (vpos);
 
             var handler = ModelChanged;
diff --git a/src/Hyena/Hyena.Gui/Hyena.Gui.Canvas/TextBlock.cs b/src/Hyena/Hyena.Gui/Hyena.Gui.Canvas/TextBlock.cs
index 2ce97c3..d9f81f7 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Gui.Canvas/TextBlock.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Gui.Canvas/TextBlock.cs
@@ -35,6 +35,7 @@ namespace Hyena.Gui.Canvas
     public class TextBlock : CanvasItem
     {
         private Pango.Layout layout;
+        private Pango.FontDescription font_desc;
         private Rect text_alloc = Rect.Empty;
         private Rect invalidation_rect = Rect.Empty;
 
@@ -58,6 +59,7 @@ namespace Hyena.Gui.Canvas
 
             using (var cr = Gdk.CairoHelper.Create (widget.GdkWindow)) {
                 layout = CairoExtensions.CreateLayout (widget, cr);
+                font_desc = layout.FontDescription;
             }
 
             return layout != null;
@@ -76,20 +78,12 @@ namespace Hyena.Gui.Canvas
             TextWrap wrap = TextWrap;
             layout.Width = wrap == TextWrap.None ? -1 : (int)(Pango.Scale.PangoScale * (available.Width - Margin.X));
             layout.Wrap = GetPangoWrapMode (wrap);
-            layout.FontDescription.Weight = GetPangoFontWeight (FontWeight);
+            font_desc.Weight = GetPangoFontWeight (FontWeight);
             layout.SingleParagraphMode = wrap == TextWrap.None;
             layout.Ellipsize = EllipsizeMode;
             
-            last_text = GetFormattedText (GetText ()) ?? "";
-            if (TextWrap == TextWrap.None && last_text.IndexOfAny (lfcr) >= 0) {
-                last_text = last_text.Replace ("\r\n", "\x20").Replace ('\n', '\x20').Replace ('\r', '\x20');
-            }
-
-            if (UseMarkup) {
-                layout.SetMarkup (last_text);
-            } else {
-                layout.SetText (last_text);
-            }
+            // Update layout
+            UpdateLayoutText (GetText ());
 
             layout.GetPixelSize (out text_w, out text_h);
 
@@ -112,6 +106,26 @@ namespace Hyena.Gui.Canvas
             return size;
         }
 
+        private void UpdateLayoutText (string text)
+        {
+            if (text == last_text) {
+                return;
+            }
+
+            last_formatted_text = GetFormattedText (text) ?? "";
+            last_text = text;
+
+            if (TextWrap == TextWrap.None && last_formatted_text.IndexOfAny (lfcr) >= 0) {
+                last_formatted_text = last_formatted_text.Replace ("\r\n", "\x20").Replace ('\n', '\x20').Replace ('\r', '\x20');
+            }
+
+            if (UseMarkup) {
+                layout.SetMarkup (last_formatted_text);
+            } else {
+                layout.SetText (last_formatted_text);
+            }
+        }
+
         private string GetText ()
         {
             if (TextGenerator != null) {
@@ -149,7 +163,7 @@ namespace Hyena.Gui.Canvas
             layout.GetPixelSize (out text_width, out text_height);
 
             if (layout.IsEllipsized || text_width > RenderSize.Width || text_height > RenderSize.Height) {
-                TooltipMarkup = last_text;
+                TooltipMarkup = last_formatted_text;
             } else {
                 TooltipMarkup = null;
             }
@@ -201,6 +215,7 @@ namespace Hyena.Gui.Canvas
 
             cr.MoveTo (text_alloc.X, text_alloc.Y);
             Foreground.Apply (cr);
+            UpdateLayoutText (GetText ());
             Pango.CairoHelper.ShowLayout (cr, layout);
             cr.Fill ();
 
@@ -243,7 +258,7 @@ namespace Hyena.Gui.Canvas
 
         public override string ToString ()
         {
-            return String.Format ("<TextBlock Text='{0}' Allocation={1}>", last_text, Allocation);
+            return String.Format ("<TextBlock Text='{0}' Allocation={1}>", last_formatted_text, Allocation);
         }
 
         public string Text { get; set; }
@@ -261,5 +276,6 @@ namespace Hyena.Gui.Canvas
 
         private static char[] lfcr = new char[] {'\n', '\r'};
         private string last_text;
+        private string last_formatted_text = "";
     }
 }
diff --git a/src/Hyena/Hyena.Gui/Hyena.Gui/GtkUtilities.cs b/src/Hyena/Hyena.Gui/Hyena.Gui/GtkUtilities.cs
index 2e45b22..5aa6fe0 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Gui/GtkUtilities.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Gui/GtkUtilities.cs
@@ -80,9 +80,11 @@ namespace Hyena.Gui
         public static void SetChooserShortcuts (Gtk.FileChooserDialog chooser, params string [] shortcuts)
         {
             foreach (string shortcut in shortcuts) {
-                try {
-                    chooser.AddShortcutFolder (shortcut);
-                } catch {}
+                if (shortcut != null) {
+                    try {
+                        chooser.AddShortcutFolder (shortcut);
+                    } catch {}
+                }
             }
         }
 
diff --git a/src/Hyena/Hyena.Gui/Hyena.Widgets/HigMessageDialog.cs b/src/Hyena/Hyena.Gui/Hyena.Widgets/HigMessageDialog.cs
index fb3f609..abfa153 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Widgets/HigMessageDialog.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Widgets/HigMessageDialog.cs
@@ -90,7 +90,7 @@ namespace Hyena.Widgets
 
             string title = String.Format ("<span weight='bold' size='larger'>{0}" +
                               "</span>\n",
-                              header);
+                              GLib.Markup.EscapeText (header));
 
             Gtk.Label label;
 
@@ -103,8 +103,7 @@ namespace Hyena.Widgets
             label_vbox.PackStart (label, false, false, 0);
 
             message_label = label = new Gtk.Label ();
-            label.Markup = msg;
-            label.UseMarkup = true;
+            label.Text = msg;
             label.Justify = Gtk.Justification.Left;
             label.LineWrap = true;
             label.SetAlignment (0.0f, 0.5f);
diff --git a/src/Hyena/Hyena.Gui/Hyena.Widgets/SmoothScrolledWindow.cs b/src/Hyena/Hyena.Gui/Hyena.Widgets/SmoothScrolledWindow.cs
index 9b0ed79..fae261a 100644
--- a/src/Hyena/Hyena.Gui/Hyena.Widgets/SmoothScrolledWindow.cs
+++ b/src/Hyena/Hyena.Gui/Hyena.Widgets/SmoothScrolledWindow.cs
@@ -29,7 +29,7 @@ using Hyena.Gui.Theatrics;
 
 namespace Hyena.Widgets
 {
-    public class SmoothScrolledWindow : Gtk.ScrolledWindow
+    public class SmoothScrolledWindow : Hyena.Widgets.ScrolledWindow
     {
         private bool ignore_value_changed;
         private uint timeout;
diff --git a/src/Hyena/Hyena.Gui/Makefile.in b/src/Hyena/Hyena.Gui/Makefile.in
index b6dd9ea..cfe389c 100644
--- a/src/Hyena/Hyena.Gui/Makefile.in
+++ b/src/Hyena/Hyena.Gui/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -555,12 +563,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -612,7 +616,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -740,14 +744,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/Hyena.Gui/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/Hyena.Gui/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/Hyena.Gui/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/Hyena.Gui/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -765,25 +769,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -813,13 +833,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -851,6 +875,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -871,6 +896,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -878,21 +905,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -914,7 +950,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -979,6 +1014,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/Hyena/Hyena.Query/QueryOrder.cs b/src/Hyena/Hyena/Hyena.Query/QueryOrder.cs
index 71e98e6..60538a3 100644
--- a/src/Hyena/Hyena/Hyena.Query/QueryOrder.cs
+++ b/src/Hyena/Hyena/Hyena.Query/QueryOrder.cs
@@ -35,38 +35,24 @@ namespace Hyena.Query
 {
     public class QueryOrder
     {
-        private string name;
-        public string Name {
-            get { return name; }
-        }
-
-        private string label;
-        public string Label {
-            get { return label; }
-            set { label = value; }
-        }
-
-        private string order_sql;
-        public string OrderSql {
-            get { return order_sql; }
-        }
-
-        private QueryField field;
-        public QueryField Field {
-            get { return field; }
-        }
+        public string Name { get; private set; }
+        public string Label { get; private set; }
+        public string OrderSql { get; private set; }
+        public QueryField Field { get; private set; }
+        public bool Ascending { get; private set; }
 
-        public QueryOrder (string name, string label, string order_sql, QueryField field)
+        public QueryOrder (string name, string label, string order_sql, QueryField field, bool asc)
         {
-            this.name = name;
-            this.label = label;
-            this.order_sql = order_sql;
-            this.field = field;
+            Name = name;
+            Label = label;
+            OrderSql = order_sql;
+            Field = field;
+            Ascending = asc;
         }
 
         public string ToSql ()
         {
-            return String.Format ("ORDER BY {0}", order_sql);
+            return String.Format ("ORDER BY {0}", OrderSql);
         }
     }
 }
diff --git a/src/Hyena/Hyena/Hyena/ApplicationContext.cs b/src/Hyena/Hyena/Hyena/ApplicationContext.cs
index fd4fcfa..88c0bf0 100644
--- a/src/Hyena/Hyena/Hyena/ApplicationContext.cs
+++ b/src/Hyena/Hyena/Hyena/ApplicationContext.cs
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Globalization;
 using System.Text;
 using System.Runtime.InteropServices;
 
@@ -81,8 +82,13 @@ namespace Hyena
             return !String.IsNullOrEmpty (Environment.GetEnvironmentVariable (env));
         }
 
-        public static System.Globalization.CultureInfo InternalCultureInfo {
-            get { return System.Globalization.CultureInfo.InvariantCulture; }
+        private static CultureInfo current_culture = CultureInfo.CurrentCulture;
+        public static CultureInfo CurrentCulture {
+            get { return current_culture; }
+        }
+
+        public static CultureInfo InternalCultureInfo {
+            get { return CultureInfo.InvariantCulture; }
         }
 
         [DllImport ("libc")] // Linux
diff --git a/src/Hyena/Hyena/Hyena/SafeUri.cs b/src/Hyena/Hyena/Hyena/SafeUri.cs
index a394c78..c63ef5f 100644
--- a/src/Hyena/Hyena/Hyena/SafeUri.cs
+++ b/src/Hyena/Hyena/Hyena/SafeUri.cs
@@ -48,7 +48,7 @@ namespace Hyena
 
         public SafeUri (string uri)
         {
-            int scheme_delimit_index = uri.IndexOf ("://");
+            int scheme_delimit_index = uri.IndexOf ("://", StringComparison.InvariantCulture);
             if (scheme_delimit_index > 0 && scheme_delimit_index <= MAX_SCHEME_LENGTH) {
                 this.uri = uri;
             } else {
@@ -181,7 +181,7 @@ namespace Hyena
         public string Scheme {
             get {
                 if (scheme == null) {
-                    scheme = uri.Substring (0, uri.IndexOf ("://"));
+                    scheme = uri.Substring (0, uri.IndexOf ("://", StringComparison.InvariantCulture));
                 }
 
                 return scheme;
diff --git a/src/Hyena/Hyena/Hyena/StringUtil.cs b/src/Hyena/Hyena/Hyena/StringUtil.cs
index 6893370..9d0ddd1 100644
--- a/src/Hyena/Hyena/Hyena/StringUtil.cs
+++ b/src/Hyena/Hyena/Hyena/StringUtil.cs
@@ -44,7 +44,7 @@ namespace Hyena
 
         public static int RelaxedIndexOf (string haystack, string needle)
         {
-            return CultureInfo.CurrentCulture.CompareInfo.IndexOf (haystack, needle, compare_options);
+            return ApplicationContext.CurrentCulture.CompareInfo.IndexOf (haystack, needle, compare_options);
         }
 
         public static int RelaxedCompare (string a, string b)
@@ -60,7 +60,7 @@ namespace Hyena
             int a_offset = a.StartsWith ("the ") ? 4 : 0;
             int b_offset = b.StartsWith ("the ") ? 4 : 0;
 
-            return CultureInfo.CurrentCulture.CompareInfo.Compare (a, a_offset, a.Length - a_offset,
+            return ApplicationContext.CurrentCulture.CompareInfo.Compare (a, a_offset, a.Length - a_offset,
                 b, b_offset, b.Length - b_offset, compare_options);
         }
 
@@ -258,7 +258,7 @@ namespace Hyena
             return new Regex (regex_str, RegexOptions.Compiled);
         }
 
-        private static CompareInfo culture_compare_info = CultureInfo.CurrentCulture.CompareInfo;
+        private static CompareInfo culture_compare_info = ApplicationContext.CurrentCulture.CompareInfo;
         public static byte[] SortKey (string orig)
         {
             if (orig == null) { return null; }
diff --git a/src/Hyena/Hyena/Makefile.in b/src/Hyena/Hyena/Makefile.in
index 978892b..34c5147 100644
--- a/src/Hyena/Hyena/Makefile.in
+++ b/src/Hyena/Hyena/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -547,12 +555,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -604,7 +608,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -732,14 +736,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/Hyena/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/Hyena/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/Hyena/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/Hyena/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -757,25 +761,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -805,13 +825,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -843,6 +867,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -863,6 +888,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -870,21 +897,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -906,7 +942,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -971,6 +1006,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/Makefile.am b/src/Hyena/Makefile.am
index 3a83e91..b6a3955 100644
--- a/src/Hyena/Makefile.am
+++ b/src/Hyena/Makefile.am
@@ -2,7 +2,6 @@
 SUBDIRS =  \
     build \
     Hyena \
-	Mono.Data.Sqlite \
 	Hyena.Data.Sqlite \
 	Hyena.Gui
 
diff --git a/src/Hyena/Makefile.in b/src/Hyena/Makefile.in
index 675f061..dbc1dc3 100644
--- a/src/Hyena/Makefile.in
+++ b/src/Hyena/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -87,10 +90,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -208,29 +239,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -265,6 +277,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -306,9 +319,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -389,7 +405,6 @@ top_srcdir = @top_srcdir@
 SUBDIRS = \
     build \
     Hyena \
-	Mono.Data.Sqlite \
 	Hyena.Data.Sqlite \
 	Hyena.Gui
 
@@ -426,14 +441,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -451,6 +466,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -465,7 +481,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -482,7 +498,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -490,7 +506,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -516,16 +532,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -533,14 +549,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -552,7 +568,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -561,29 +577,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -604,29 +625,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -656,6 +692,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -675,6 +712,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -683,18 +722,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -715,8 +764,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -742,6 +791,7 @@ clean-local:
 @ENABLE_TESTS_TRUE@	popd &>/dev/null;
 @ENABLE_TESTS_FALSE at test:
 @ENABLE_TESTS_FALSE@	echo "Tests not enabled.  Pass --enable-tests to configure or ./autogen.sh"
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/Mono.Data.Sqlite/Makefile.am b/src/Hyena/Mono.Data.Sqlite/Makefile.am
deleted file mode 100644
index 8516b25..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Makefile.am
+++ /dev/null
@@ -1,30 +0,0 @@
-ASSEMBLY = Mono.Data.Sqlite
-TARGET = library
-LINK = -r:System -r:System.Data -r:System.Transactions
-ASSEMBLY_BUILD_FLAGS = -unsafe -d:MONO_BACKWARD_COMPAT
-SOURCES =  \
-	Mono.Data.Sqlite/SQLite3.cs \
-	Mono.Data.Sqlite/SQLite3_UTF16.cs \
-	Mono.Data.Sqlite/SQLiteBase.cs \
-	Mono.Data.Sqlite/SQLiteCommand.cs \
-	Mono.Data.Sqlite/SQLiteCommandBuilder.cs \
-	Mono.Data.Sqlite/SQLiteConnection.cs \
-	Mono.Data.Sqlite/SQLiteConnectionStringBuilder.cs \
-	Mono.Data.Sqlite/SQLiteConvert.cs \
-	Mono.Data.Sqlite/SQLiteDataAdapter.cs \
-	Mono.Data.Sqlite/SQLiteDataReader.cs \
-	Mono.Data.Sqlite/SqliteDataSourceEnumerator.cs \
-	Mono.Data.Sqlite/SQLiteEnlistment.cs \
-	Mono.Data.Sqlite/SQLiteException.cs \
-	Mono.Data.Sqlite/SQLiteFactory.cs \
-	Mono.Data.Sqlite/SQLiteFunction.cs \
-	Mono.Data.Sqlite/SQLiteFunctionAttribute.cs \
-	Mono.Data.Sqlite/SQLiteMetaDataCollectionNames.cs \
-	Mono.Data.Sqlite/SQLiteParameter.cs \
-	Mono.Data.Sqlite/SQLiteParameterCollection.cs \
-	Mono.Data.Sqlite/SQLiteStatement.cs \
-	Mono.Data.Sqlite/SQLiteTransaction.cs \
-	Mono.Data.Sqlite/SR.Designer.cs \
-	Mono.Data.Sqlite/UnsafeNativeMethods.cs 
-
-include $(top_srcdir)/build/build.mk
diff --git a/src/Hyena/Mono.Data.Sqlite/Makefile.in b/src/Hyena/Mono.Data.Sqlite/Makefile.in
deleted file mode 100644
index f6e05a3..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Makefile.in
+++ /dev/null
@@ -1,870 +0,0 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-	$(top_srcdir)/build/build.environment.mk \
-	$(top_srcdir)/build/build.mk \
-	$(top_srcdir)/build/build.rules.mk
- at ENABLE_TESTS_TRUE@am__append_1 = " $(NUNIT_LIBS)"
-subdir = src/Hyena/Mono.Data.Sqlite
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/build/m4/shave/shave.m4 \
-	$(top_srcdir)/build/m4/shamrock/expansions.m4 \
-	$(top_srcdir)/build/m4/shamrock/gnome-doc.m4 \
-	$(top_srcdir)/build/m4/shamrock/i18n.m4 \
-	$(top_srcdir)/build/m4/shamrock/mono.m4 \
-	$(top_srcdir)/build/m4/shamrock/monodoc.m4 \
-	$(top_srcdir)/build/m4/shamrock/nunit.m4 \
-	$(top_srcdir)/build/m4/shamrock/programs.m4 \
-	$(top_srcdir)/build/m4/shamrock/util.m4 \
-	$(top_srcdir)/build/m4/banshee/bnpx11.m4 \
-	$(top_srcdir)/build/m4/banshee/boo.m4 \
-	$(top_srcdir)/build/m4/banshee/daap.m4 \
-	$(top_srcdir)/build/m4/banshee/dap-appledevice.m4 \
-	$(top_srcdir)/build/m4/banshee/dap-ipod.m4 \
-	$(top_srcdir)/build/m4/banshee/dap-karma.m4 \
-	$(top_srcdir)/build/m4/banshee/dap-mtp.m4 \
-	$(top_srcdir)/build/m4/banshee/dbus.m4 \
-	$(top_srcdir)/build/m4/banshee/gio.m4 \
-	$(top_srcdir)/build/m4/banshee/gnome-doc-utils.m4 \
-	$(top_srcdir)/build/m4/banshee/gnome-sharp.m4 \
-	$(top_srcdir)/build/m4/banshee/gstreamer-sharp.m4 \
-	$(top_srcdir)/build/m4/banshee/gstreamer.m4 \
-	$(top_srcdir)/build/m4/banshee/gtk-sharp.m4 \
-	$(top_srcdir)/build/m4/banshee/hal.m4 \
-	$(top_srcdir)/build/m4/banshee/libbanshee.m4 \
-	$(top_srcdir)/build/m4/banshee/libwebkit.m4 \
-	$(top_srcdir)/build/m4/banshee/meego.m4 \
-	$(top_srcdir)/build/m4/banshee/mono-addins.m4 \
-	$(top_srcdir)/build/m4/banshee/moonlight.m4 \
-	$(top_srcdir)/build/m4/banshee/notify-sharp.m4 \
-	$(top_srcdir)/build/m4/banshee/osx.m4 \
-	$(top_srcdir)/build/m4/banshee/remote-audio.m4 \
-	$(top_srcdir)/build/m4/banshee/taglib.m4 \
-	$(top_srcdir)/build/m4/banshee/torrent.m4 \
-	$(top_srcdir)/build/m4/banshee/youtube.m4 \
-	$(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
-SCRIPTS = $(module_SCRIPTS)
-DIST_SOURCES =
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
-ALL_LINGUAS = @ALL_LINGUAS@
-AMTAR = @AMTAR@
-AM_MAKEFLAGS = @AM_MAKEFLAGS@
-API_VERSION = @API_VERSION@
-AR = @AR@
-ASM_VERSION = @ASM_VERSION@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BANSHEE_DESKTOP_NAME = @BANSHEE_DESKTOP_NAME@
-BNPX_CFLAGS = @BNPX_CFLAGS@
-BNPX_GTK_CFLAGS = @BNPX_GTK_CFLAGS@
-BNPX_GTK_LIBS = @BNPX_GTK_LIBS@
-BNPX_LIBS = @BNPX_LIBS@
-BOO_CFLAGS = @BOO_CFLAGS@
-BOO_LIBS = @BOO_LIBS@
-BUILD_HOST_CPU = @BUILD_HOST_CPU@
-BUILD_HOST_OS = @BUILD_HOST_OS@
-BUILD_TIME = @BUILD_TIME@
-BUILD_VENDOR_ID = @BUILD_VENDOR_ID@
-CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CLUTTER_CFLAGS = @CLUTTER_CFLAGS@
-CLUTTER_LIBS = @CLUTTER_LIBS@
-CONFIG_STATUS_DEPENDENCIES = @CONFIG_STATUS_DEPENDENCIES@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CYGPATH_W = @CYGPATH_W@
-DATADIRNAME = @DATADIRNAME@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DISPLAY_VERSION = @DISPLAY_VERSION@
-DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
-DOCDIR = @DOCDIR@
-DOC_USER_FORMATS = @DOC_USER_FORMATS@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-ENABLE_RELEASE = @ENABLE_RELEASE@
-EXEEXT = @EXEEXT@
-F77 = @F77@
-FC = @FC@
-FGREP = @FGREP@
-GCONFSHARP_CFLAGS = @GCONFSHARP_CFLAGS@
-GCONFSHARP_LIBS = @GCONFSHARP_LIBS@
-GCONFTOOL = @GCONFTOOL@
-GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@
-GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@
-GDATASHARP_CFLAGS = @GDATASHARP_CFLAGS@
-GDATASHARP_LIBS = @GDATASHARP_LIBS@
-GDK_QUARTZ_CFLAGS = @GDK_QUARTZ_CFLAGS@
-GDK_QUARTZ_LIBS = @GDK_QUARTZ_LIBS@
-GDK_X11_CFLAGS = @GDK_X11_CFLAGS@
-GDK_X11_LIBS = @GDK_X11_LIBS@
-GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
-GIOSHARP_ASSEMBLIES = @GIOSHARP_ASSEMBLIES@
-GIOSHARP_CFLAGS = @GIOSHARP_CFLAGS@
-GIOSHARP_LIBS = @GIOSHARP_LIBS@
-GKEYFILE_SHARP_CFLAGS = @GKEYFILE_SHARP_CFLAGS@
-GKEYFILE_SHARP_LIBS = @GKEYFILE_SHARP_LIBS@
-GLIBSHARP_2_12_7_CFLAGS = @GLIBSHARP_2_12_7_CFLAGS@
-GLIBSHARP_2_12_7_LIBS = @GLIBSHARP_2_12_7_LIBS@
-GLIBSHARP_CFLAGS = @GLIBSHARP_CFLAGS@
-GLIBSHARP_LIBS = @GLIBSHARP_LIBS@
-GLIB_2_22_CFLAGS = @GLIB_2_22_CFLAGS@
-GLIB_2_22_LIBS = @GLIB_2_22_LIBS@
-GLIB_CFLAGS = @GLIB_CFLAGS@
-GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
-GLIB_LIBS = @GLIB_LIBS@
-GLIB_MKENUMS = @GLIB_MKENUMS@
-GMCS_FLAGS = @GMCS_FLAGS@
-GMOFILES = @GMOFILES@
-GMSGFMT = @GMSGFMT@
-GNOME_2_28_CFLAGS = @GNOME_2_28_CFLAGS@
-GNOME_2_28_LIBS = @GNOME_2_28_LIBS@
-GNOME_DOC_UTILS_CFLAGS = @GNOME_DOC_UTILS_CFLAGS@
-GNOME_DOC_UTILS_LIBS = @GNOME_DOC_UTILS_LIBS@
-GOBJECT_QUERY = @GOBJECT_QUERY@
-GRAPHICS_SUBSYSTEM = @GRAPHICS_SUBSYSTEM@
-GREP = @GREP@
-GSTREAMER_REQUIRED_VERSION = @GSTREAMER_REQUIRED_VERSION@
-GST_CFLAGS = @GST_CFLAGS@
-GST_LIBS = @GST_LIBS@
-GST_PLUGINS_BASE_CFLAGS = @GST_PLUGINS_BASE_CFLAGS@
-GST_PLUGINS_BASE_LIBS = @GST_PLUGINS_BASE_LIBS@
-GST_SHARP_CFLAGS = @GST_SHARP_CFLAGS@
-GST_SHARP_LIBS = @GST_SHARP_LIBS@
-GTKSHARP_A11Y_CFLAGS = @GTKSHARP_A11Y_CFLAGS@
-GTKSHARP_A11Y_LIBS = @GTKSHARP_A11Y_LIBS@
-GTKSHARP_BEANS_CFLAGS = @GTKSHARP_BEANS_CFLAGS@
-GTKSHARP_BEANS_LIBS = @GTKSHARP_BEANS_LIBS@
-GTKSHARP_CFLAGS = @GTKSHARP_CFLAGS@
-GTKSHARP_LIBS = @GTKSHARP_LIBS@
-GTK_CFLAGS = @GTK_CFLAGS@
-GTK_LIBS = @GTK_LIBS@
-GUDEV_SHARP_CFLAGS = @GUDEV_SHARP_CFLAGS@
-GUDEV_SHARP_LIBS = @GUDEV_SHARP_LIBS@
-HELP_DIR = @HELP_DIR@
-IGEMACINTEGRATION_CFLAGS = @IGEMACINTEGRATION_CFLAGS@
-IGEMACINTEGRATION_LIBS = @IGEMACINTEGRATION_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INSTOBJEXT = @INSTOBJEXT@
-INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
-INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
-INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
-INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
-INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
-IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
-IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
-IPODSHARP_LIBS = @IPODSHARP_LIBS@
-KARMASHARP_ASSEMBLIES = @KARMASHARP_ASSEMBLIES@
-KARMASHARP_CFLAGS = @KARMASHARP_CFLAGS@
-KARMASHARP_LIBS = @KARMASHARP_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBBANSHEE_CFLAGS = @LIBBANSHEE_CFLAGS@
-LIBBANSHEE_LIBS = @LIBBANSHEE_LIBS@
-LIBGPODSHARP_ASSEMBLIES = @LIBGPODSHARP_ASSEMBLIES@
-LIBGPODSHARP_CFLAGS = @LIBGPODSHARP_CFLAGS@
-LIBGPODSHARP_LIBS = @LIBGPODSHARP_LIBS@
-LIBMTP_CFLAGS = @LIBMTP_CFLAGS@
-LIBMTP_LIBS = @LIBMTP_LIBS@
-LIBMTP_SO_MAP = @LIBMTP_SO_MAP@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBSOUP_GNOME_CFLAGS = @LIBSOUP_GNOME_CFLAGS@
-LIBSOUP_GNOME_LIBS = @LIBSOUP_GNOME_LIBS@
-LIBTOOL = @LIBTOOL@
-LIBWEBKIT_CFLAGS = @LIBWEBKIT_CFLAGS@
-LIBWEBKIT_LIBS = @LIBWEBKIT_LIBS@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEFLAGS = @MAKEFLAGS@
-MAKEINFO = @MAKEINFO@
-MCS = @MCS@
-MDASSEMBLER = @MDASSEMBLER@
-MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
-MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
-MKDIR_P = @MKDIR_P@
-MONO = @MONO@
-MONODOCER = @MONODOCER@
-MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
-MONOTORRENT_DBUS_CFLAGS = @MONOTORRENT_DBUS_CFLAGS@
-MONOTORRENT_DBUS_LIBS = @MONOTORRENT_DBUS_LIBS@
-MONO_2_4_3_CFLAGS = @MONO_2_4_3_CFLAGS@
-MONO_2_4_3_LIBS = @MONO_2_4_3_LIBS@
-MONO_ADDINS_CFLAGS = @MONO_ADDINS_CFLAGS@
-MONO_ADDINS_LIBS = @MONO_ADDINS_LIBS@
-MONO_ADDINS_SETUP_CFLAGS = @MONO_ADDINS_SETUP_CFLAGS@
-MONO_ADDINS_SETUP_LIBS = @MONO_ADDINS_SETUP_LIBS@
-MONO_MODULE_CFLAGS = @MONO_MODULE_CFLAGS@
-MONO_MODULE_LIBS = @MONO_MODULE_LIBS@
-MONO_ZEROCONF_CFLAGS = @MONO_ZEROCONF_CFLAGS@
-MONO_ZEROCONF_LIBS = @MONO_ZEROCONF_LIBS@
-MOONLIGHT_CFLAGS = @MOONLIGHT_CFLAGS@
-MOONLIGHT_LIBS = @MOONLIGHT_LIBS@
-MSGFMT = @MSGFMT@
-MSGFMT_OPTS = @MSGFMT_OPTS@
-MSGMERGE = @MSGMERGE@
-NDESK_DBUS_CFLAGS = @NDESK_DBUS_CFLAGS@
-NDESK_DBUS_GLIB_CFLAGS = @NDESK_DBUS_GLIB_CFLAGS@
-NDESK_DBUS_GLIB_LIBS = @NDESK_DBUS_GLIB_LIBS@
-NDESK_DBUS_LIBS = @NDESK_DBUS_LIBS@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NOTIFY_SHARP_CFLAGS = @NOTIFY_SHARP_CFLAGS@
-NOTIFY_SHARP_LIBS = @NOTIFY_SHARP_LIBS@
-NUNIT_CFLAGS = @NUNIT_CFLAGS@
-NUNIT_LIBS = @NUNIT_LIBS@
-OBJC = @OBJC@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OMF_DIR = @OMF_DIR@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PKG_CONFIG = @PKG_CONFIG@
-POFILES = @POFILES@
-POSUB = @POSUB@
-PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
-PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
-Q = @Q@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SQLITE_CFLAGS = @SQLITE_CFLAGS@
-SQLITE_LIBS = @SQLITE_LIBS@
-STRIP = @STRIP@
-TAGLIB_SHARP_CFLAGS = @TAGLIB_SHARP_CFLAGS@
-TAGLIB_SHARP_LIBS = @TAGLIB_SHARP_LIBS@
-USE_NLS = @USE_NLS@
-V = @V@
-VERSION = @VERSION@
-XGETTEXT = @XGETTEXT@
-XMKMF = @XMKMF@
-XVIDMODE_CFLAGS = @XVIDMODE_CFLAGS@
-XVIDMODE_LIBS = @XVIDMODE_LIBS@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-expanded_bindir = @expanded_bindir@
-expanded_datadir = @expanded_datadir@
-expanded_libdir = @expanded_libdir@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-shavedir = @shavedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-ASSEMBLY = Mono.Data.Sqlite
-TARGET = library
-LINK = -r:System -r:System.Data -r:System.Transactions $(am__append_1)
-ASSEMBLY_BUILD_FLAGS = -unsafe -d:MONO_BACKWARD_COMPAT
-SOURCES = \
-	Mono.Data.Sqlite/SQLite3.cs \
-	Mono.Data.Sqlite/SQLite3_UTF16.cs \
-	Mono.Data.Sqlite/SQLiteBase.cs \
-	Mono.Data.Sqlite/SQLiteCommand.cs \
-	Mono.Data.Sqlite/SQLiteCommandBuilder.cs \
-	Mono.Data.Sqlite/SQLiteConnection.cs \
-	Mono.Data.Sqlite/SQLiteConnectionStringBuilder.cs \
-	Mono.Data.Sqlite/SQLiteConvert.cs \
-	Mono.Data.Sqlite/SQLiteDataAdapter.cs \
-	Mono.Data.Sqlite/SQLiteDataReader.cs \
-	Mono.Data.Sqlite/SqliteDataSourceEnumerator.cs \
-	Mono.Data.Sqlite/SQLiteEnlistment.cs \
-	Mono.Data.Sqlite/SQLiteException.cs \
-	Mono.Data.Sqlite/SQLiteFactory.cs \
-	Mono.Data.Sqlite/SQLiteFunction.cs \
-	Mono.Data.Sqlite/SQLiteFunctionAttribute.cs \
-	Mono.Data.Sqlite/SQLiteMetaDataCollectionNames.cs \
-	Mono.Data.Sqlite/SQLiteParameter.cs \
-	Mono.Data.Sqlite/SQLiteParameterCollection.cs \
-	Mono.Data.Sqlite/SQLiteStatement.cs \
-	Mono.Data.Sqlite/SQLiteTransaction.cs \
-	Mono.Data.Sqlite/SR.Designer.cs \
-	Mono.Data.Sqlite/UnsafeNativeMethods.cs 
-
-
-# Initializers
-MONO_BASE_PATH = 
-MONO_ADDINS_PATH = 
-
-# Install Paths
-DEFAULT_INSTALL_DIR = $(pkglibdir)
-BACKENDS_INSTALL_DIR = $(DEFAULT_INSTALL_DIR)/Backends
-EXTENSIONS_INSTALL_DIR = $(DEFAULT_INSTALL_DIR)/Extensions
-
-# External libraries to link against, generated from configure
-LINK_SYSTEM = -r:System
-LINK_CAIRO = -r:Mono.Cairo
-LINK_MONO_POSIX = -r:Mono.Posix
-LINK_ICSHARP_ZIP_LIB = -r:ICSharpCode.SharpZipLib
-LINK_MONO_ZEROCONF = $(MONO_ZEROCONF_LIBS)
-LINK_GLIB = $(GLIBSHARP_LIBS)
-LINK_GTK = $(GTKSHARP_LIBS)
-LINK_GCONF = $(GCONFSHARP_LIBS)
-LINK_GIO = $(GTKSHARP_BEANS_LIBS) $(GIOSHARP_LIBS)
-LINK_GKEYFILE = $(GKEYFILE_SHARP_LIBS)
-LINK_GUDEV = $(GUDEV_SHARP_LIBS)
-LINK_DBUS = $(NDESK_DBUS_LIBS) $(NDESK_DBUS_GLIB_LIBS)
-LINK_DBUS_NO_GLIB = $(NDESK_DBUS_LIBS) 
-LINK_TAGLIB = $(TAGLIB_SHARP_LIBS)
-LINK_IPOD = $(IPODSHARP_LIBS)
-LINK_BOO = $(BOO_LIBS)
-LINK_GDATA = $(GDATASHARP_LIBS)
-LINK_MONOTORRENT_DBUS = $(MONOTORRENT_DBUS_LIBS)
-LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
-LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
-DIR_BIN = $(top_builddir)/bin
-
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
-# Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
-LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
-LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
-
-# Hyena.Gui
-REF_HYENA_GUI = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_CAIRO) $(LINK_GTK)
-LINK_HYENA_GUI = -r:$(DIR_BIN)/Hyena.Gui.dll
-LINK_HYENA_GUI_DEPS = $(REF_HYENA_GUI) $(LINK_HYENA_GUI)
-
-# Lastfm
-REF_LASTFM = $(LINK_SYSTEM) $(LINK_MONO_MEDIA) $(LINK_MONO_POSIX) $(LINK_HYENA) $(LINK_ICSHARP_ZIP_LIB) 
-LINK_LASTFM = -r:$(DIR_BIN)/Lastfm.dll
-LINK_LASTFM_DEPS = $(REF_LASTFM) $(LINK_LASTFM)
-
-# Lastfm.Gui
-REF_LASTFM_GUI = $(LINK_GLIB) $(LINK_GTK) $(LINK_LASTFM_DEPS)
-LINK_LASTFM_GUI = -r:$(DIR_BIN)/Lastfm.Gui.dll
-LINK_LASTFM_GUI_DEPS = $(REF_LASTFM_GUI) $(LINK_LASTFM_GUI)
-REF_MIGO = $(LINK_HYENA_DEPS) $(LINK_ICSHARP_ZIP_LIB)
-LINK_MIGO = -r:$(DIR_BIN)/Migo.dll
-LINK_MIGO_DEPS = $(REF_MIGO) $(LINK_MIGO)
-
-# Mono.Media
-REF_MONO_MEDIA = $(LINK_SYSTEM)
-LINK_MONO_MEDIA = -r:$(DIR_BIN)/Mono.Media.dll
-LINK_MONO_MEDIA_DEPS = $(REF_MONO_MEDIA) $(LINK_MONO_MEDIA)
-
-# Mtp
-REF_MTP = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
-LINK_MTP = -r:$(DIR_BIN)/Mtp.dll
-LINK_MTP_DEPS = $(REF_MTP) $(LINK_MTP)
-
-# AppleDevice
-REF_APPLEDEVICE = $(LINK_SYSTEM)
-LINK_APPLEDEVICE_DEPS = $(REF_APPLEDEVICE) $(LIBGPODSHARP_LIBS)
-
-# Karma
-REF_KARMA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
-LINK_KARMA = $(KARMASHARP_LIBS)
-LINK_KARMA_DEPS = $(REF_KARMA) $(LINK_KARMA)
-
-# MusicBrainz
-REF_MUSICBRAINZ = $(LINK_SYSTEM)
-LINK_MUSICBRAINZ = -r:$(DIR_BIN)/MusicBrainz.dll
-LINK_MUSICBRAINZ_DEPS = $(REF_MUSICBRAINZ) $(LINK_MUSICBRAINZ)
-
-# Core
-REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
-	$(LINK_DBUS) $(LINK_TAGLIB) $(LINK_MONO_ADDINS_DEPS)
-
-LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
-LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
-LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
-LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
-REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
-LINK_BANSHEE_WIDGETS = -r:$(DIR_BIN)/Banshee.Widgets.dll
-LINK_BANSHEE_WIDGETS_DEPS = $(REF_BANSHEE_WIDGETS) $(LINK_BANSHEE_WIDGETS)
-REF_BANSHEE_THICKCLIENT = $(LINK_BANSHEE_WIDGETS_DEPS) \
-	$(LINK_BANSHEE_SERVICES_DEPS) $(LINK_HYENA_GUI_DEPS) $(LINK_MONO_ADDINS_SETUP_DEPS)
-
-LINK_BANSHEE_THICKCLIENT = -r:$(DIR_BIN)/Banshee.ThickClient.dll
-LINK_BANSHEE_THICKCLIENT_DEPS = $(REF_BANSHEE_THICKCLIENT) \
-	$(LINK_BANSHEE_THICKCLIENT)
-
-REF_BANSHEE_WEBBROWSER = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_BANSHEE_WEBBROWSER = -r:$(DIR_BIN)/Banshee.WebBrowser.dll
-LINK_BANSHEE_WEBBROWSER_DEPS = $(REF_BANSHEE_WEBBROWSER) $(LINK_BANSHEE_WEBBROWSER)
-REF_NEREID = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_NEREID = -r:$(DIR_BIN)/Nereid.exe $(REF_NEREID)
-REF_MEEGO = $(LINK_NEREID) $(LINK_EXTENSION_MEEGO)
-REF_HALIE = $(LINK_BANSHEE_SERVICES_DEPS)
-REF_BEROE = $(LINK_BANSHEE_SERVICES_DEPS)
-REF_BOOTER = $(LINK_BANSHEE_SERVICES_DEPS)
-REF_BANSHEE_COLLECTIONINDEXER = $(LINK_SYSTEM) $(LINK_DBUS_NO_GLIB) $(LINK_MONO_POSIX)
-
-# Dap
-REF_DAP = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_DAP = -r:$(DIR_BIN)/Banshee.Dap.dll
-LINK_DAP_DEPS = $(REF_DAP) $(LINK_DAP)
-REF_DAP_APPLEDEVICE = $(LINK_DAP_DEPS) $(LINK_APPLEDEVICE_DEPS)
-REF_DAP_MASS_STORAGE = $(LINK_DAP_DEPS)
-REF_DAP_MTP = $(LINK_DAP_DEPS) $(LINK_MTP_DEPS)
-REF_DAP_IPOD = $(LINK_DAP_DEPS) $(LINK_IPOD)
-REF_DAP_KARMA = $(LINK_DAP_DEPS) $(LINK_KARMA_DEPS)
-
-# Extensions
-LINK_EXTENSION_AMAZONMP3 = -r:$(DIR_BIN)/Banshee.AmazonMp3.exe
-REF_EXTENSION_AMAZONMP3 = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_AMAZONMP3_STORE = $(LINK_BANSHEE_WEBBROWSER_DEPS) $(LINK_EXTENSION_AMAZONMP3)
-REF_EXTENSION_AUDIOCD = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MUSICBRAINZ_DEPS)
-REF_EXTENSION_BOOSCRIPT = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_BOO)
-REF_EXTENSION_BPM = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_COVERART = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_DAAP = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_ICSHARP_ZIP_LIB) $(LINK_MONO_ZEROCONF)
-REF_EXTENSION_EMUSIC = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MIGO_DEPS)
-REF_EXTENSION_FILESYSTEMQUEUE = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_INTERNETRADIO = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_INTERNETARCHIVE = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_LIBRARYWATCHER = $(LINK_BANSHEE_SERVICES_DEPS)
-REF_EXTENSION_MINIMODE = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_MEEGO = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_EXTENSION_MEEGO = -r:$(DIR_BIN)/Banshee.MeeGo.dll $(REF_EXTENSION_MEEGO)
-REF_EXTENSION_MPRIS = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_MULTIMEDIAKEYS = $(LINK_BANSHEE_SERVICES_DEPS)
-REF_EXTENSION_FIXUP = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MUSICBRAINZ_DEPS) $(LINK_MIGO_DEPS)
-REF_EXTENSION_NOTIFICATIONAREA = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_PLAYER_MIGRATION = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_PLAYQUEUE = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_EXTENSION_PLAYQUEUE = -r:$(DIR_BIN)/Banshee.PlayQueue.dll
-LINK_EXTENSION_PLAYQUEUE_DEPS = $(REF_EXTENSION_PLAYQUEUE) \
-	$(LINK_EXTENSION_PLAYQUEUE)
-
-REF_EXTENSION_LASTFM = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MONO_MEDIA) $(LINK_LASTFM) $(LINK_LASTFM_GUI)
-LINK_EXTENSION_LASTFM = -r:$(DIR_BIN)/Banshee.Lastfm.dll
-REF_EXTENSION_LASTFM_STREAMING = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MONO_MEDIA) $(LINK_LASTFM) $(LINK_LASTFM_GUI) $(LINK_EXTENSION_LASTFM)
-REF_EXTENSION_NOWPLAYING = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-LINK_EXTENSION_NOWPLAYING = -r:$(DIR_BIN)/Banshee.NowPlaying.dll
-LINK_EXTENSION_NOWPLAYING_DEPS = $(REF_EXTENSION_NOWPLAYING) \
-	$(LINK_EXTENSION_NOWPLAYING)
-
-REF_EXTENSION_NOWPLAYING_CLUTTER = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_PODCASTING = $(LINK_MIGO_DEPS) $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_AUDIOBOOK = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_SAMPLE = $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_EXTENSION_REMOTE_AUDIO = $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_MONO_ZEROCONF)
-REF_EXTENSION_WIKIPEDIA = $(LINK_BANSHEE_WEBBROWSER_DEPS)
-
-# Backends
-REF_BACKEND_GIO = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_GIO) $(LINK_GUDEV) $(LINK_GKEYFILE)
-REF_BACKEND_GNOME = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_BANSHEE_THICKCLIENT_DEPS) $(LINK_GCONF)
-REF_BACKEND_GSTREAMER = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_GLIB)
-REF_BACKEND_UNIX = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_POSIX)
-REF_BACKEND_HAL = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_DBUS)
-REF_BACKEND_OSX = $(LINK_BANSHEE_SERVICES_DEPS) $(LINK_BANSHEE_THICKCLIENT_DEPS)
-REF_BACKEND_BNPX11 = $(LINK_EXTENSION_NOWPLAYING_DEPS)
-
-# Cute hack to replace a space with something
-colon := :
-empty := 
-space := $(empty) $(empty)
-
-# Build path to allow running uninstalled
-RUN_PATH = $(subst $(space),$(colon), $(MONO_BASE_PATH))
-UNIQUE_FILTER_PIPE = tr [:space:] \\n | sort | uniq
-BUILD_DATA_DIR = $(top_builddir)/bin/share/$(PACKAGE)
-SOURCES_BUILD = $(addprefix $(srcdir)/, $(SOURCES)) \
-	$(top_srcdir)/src/AssemblyInfo.cs
-RESOURCES_EXPANDED = $(addprefix $(srcdir)/, $(RESOURCES))
-RESOURCES_BUILD = $(foreach resource, $(RESOURCES_EXPANDED), \
-	-resource:$(resource),$(notdir $(resource)))
-
-INSTALL_ICONS = $(top_srcdir)/build/private-icon-theme-installer "$(mkinstalldirs)" "$(INSTALL_DATA)"
-THEME_ICONS_SOURCE = $(wildcard $(srcdir)/ThemeIcons/*/*/*.png) $(wildcard $(srcdir)/ThemeIcons/scalable/*/*.svg)
-THEME_ICONS_RELATIVE = $(subst $(srcdir)/ThemeIcons/, , $(THEME_ICONS_SOURCE))
-ASSEMBLY_EXTENSION = $(strip $(patsubst library, dll, $(TARGET)))
-ASSEMBLY_FILE = $(top_builddir)/bin/$(ASSEMBLY).$(ASSEMBLY_EXTENSION)
-INSTALL_DIR_RESOLVED = $(firstword $(subst , $(DEFAULT_INSTALL_DIR), $(INSTALL_DIR)))
- at ENABLE_TESTS_TRUE@ENABLE_TESTS_FLAG = "-define:ENABLE_TESTS"
- at ENABLE_ATK_TRUE@ENABLE_ATK_FLAG = "-define:ENABLE_ATK"
-FILTERED_LINK = $(shell echo "$(LINK)" | $(UNIQUE_FILTER_PIPE))
-DEP_LINK = $(shell echo "$(LINK)" | $(UNIQUE_FILTER_PIPE) | sed s,-r:,,g | grep '$(top_builddir)/bin/')
-OUTPUT_FILES = \
-	$(ASSEMBLY_FILE) \
-	$(ASSEMBLY_FILE).mdb
-
-moduledir = $(INSTALL_DIR_RESOLVED)
-module_SCRIPTS = $(OUTPUT_FILES)
-EXTRA_DIST = $(SOURCES_BUILD) $(RESOURCES_EXPANDED) $(THEME_ICONS_SOURCE)
-CLEANFILES = $(OUTPUT_FILES)
-DISTCLEANFILES = *.pidb
-MAINTAINERCLEANFILES = Makefile.in
-all: all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/build/build.mk $(top_srcdir)/build/build.environment.mk $(top_srcdir)/build/build.rules.mk $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/Mono.Data.Sqlite/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/Mono.Data.Sqlite/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-install-moduleSCRIPTS: $(module_SCRIPTS)
-	@$(NORMAL_INSTALL)
-	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
-
-uninstall-moduleSCRIPTS:
-	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-tags: TAGS
-TAGS:
-
-ctags: CTAGS
-CTAGS:
-
-
-distdir: $(DISTFILES)
-	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	list='$(DISTFILES)'; \
-	  dist_files=`for file in $$list; do echo $$file; done | \
-	  sed -e "s|^$$srcdirstrip/||;t" \
-	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-	case $$dist_files in \
-	  */*) $(MKDIR_P) `echo "$$dist_files" | \
-			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-			   sort -u` ;; \
-	esac; \
-	for file in $$dist_files; do \
-	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-	  if test -d $$d/$$file; then \
-	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
-	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
-	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
-	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
-	    || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-am
-all-am: Makefile $(SCRIPTS)
-installdirs:
-	for dir in "$(DESTDIR)$(moduledir)"; do \
-	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
-	done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-info: info-am
-
-info-am:
-
-install-data-am: install-moduleSCRIPTS
-	@$(NORMAL_INSTALL)
-	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
-install-dvi: install-dvi-am
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-info: install-info-am
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-ps: install-ps-am
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-moduleSCRIPTS
-	@$(NORMAL_INSTALL)
-	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
-.MAKE: install-am install-data-am install-strip uninstall-am
-
-.PHONY: all all-am check check-am clean clean-generic clean-libtool \
-	distclean distclean-generic distclean-libtool distdir dvi \
-	dvi-am html html-am info info-am install install-am \
-	install-data install-data-am install-data-hook install-dvi \
-	install-dvi-am install-exec install-exec-am install-html \
-	install-html-am install-info install-info-am install-man \
-	install-moduleSCRIPTS install-pdf install-pdf-am install-ps \
-	install-ps-am install-strip installcheck installcheck-am \
-	installdirs maintainer-clean maintainer-clean-generic \
-	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
-	ps ps-am uninstall uninstall-am uninstall-hook \
-	uninstall-moduleSCRIPTS
-
-
-all: $(ASSEMBLY_FILE) theme-icons
-
-run: 
-	@pushd $(top_builddir); \
-	make run; \
-	popd;
-
-test:
-	@pushd $(top_builddir)/tests; \
-	make $(ASSEMBLY); \
-	popd;
-
-build-debug:
-	@echo $(DEP_LINK)
-
-$(ASSEMBLY_FILE).mdb: $(ASSEMBLY_FILE)
-
-$(ASSEMBLY_FILE): $(SOURCES_BUILD) $(RESOURCES_EXPANDED) $(DEP_LINK)
-	@mkdir -p $(top_builddir)/bin
-	@if [ ! "x$(ENABLE_RELEASE)" = "xyes" ]; then \
-		$(top_srcdir)/build/dll-map-makefile-verifier $(srcdir)/Makefile.am $(srcdir)/$(notdir $@.config) && \
-		$(MONO) $(top_builddir)/build/dll-map-verifier.exe $(srcdir)/$(notdir $@.config) -iwinmm -ilibbanshee -ilibbnpx11 -ilibc -ilibc.so.6 -iintl -ilibmtp.dll -ilibigemacintegration.dylib -iCFRelease $(SOURCES_BUILD); \
-	fi;
-	$(MCS) \
-		$(GMCS_FLAGS) \
-		$(ASSEMBLY_BUILD_FLAGS) \
-		-nowarn:0278 -nowarn:0078 $$warn \
-		-define:HAVE_GTK_2_10 -define:NET_2_0 \
-		-debug -target:$(TARGET) -out:$@ \
-		$(BUILD_DEFINES) $(ENABLE_TESTS_FLAG) $(ENABLE_ATK_FLAG) \
-		$(FILTERED_LINK) $(RESOURCES_BUILD) $(SOURCES_BUILD)
-	@if [ -e $(srcdir)/$(notdir $@.config) ]; then \
-		cp $(srcdir)/$(notdir $@.config) $(top_builddir)/bin; \
-	fi;
-	@if [ ! -z "$(EXTRA_BUNDLE)" ]; then \
-		cp $(EXTRA_BUNDLE) $(top_builddir)/bin; \
-	fi;
-
-theme-icons: $(THEME_ICONS_SOURCE)
-	@$(INSTALL_ICONS) -il "$(BUILD_DATA_DIR)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
-
-install-data-hook: $(THEME_ICONS_SOURCE)
-	@$(INSTALL_ICONS) -i "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
-	$(EXTRA_INSTALL_DATA_HOOK)
-
-uninstall-hook: $(THEME_ICONS_SOURCE)
-	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
-	$(EXTRA_UNINSTALL_HOOK)
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3.cs
deleted file mode 100644
index 2b8ed01..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3.cs
+++ /dev/null
@@ -1,674 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLite3.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Runtime.InteropServices;
-  using System.Collections.Generic;
-  using System.Globalization;
-
-  /// <summary>
-  /// This class implements SqliteBase completely, and is the guts of the code that interop's Sqlite with .NET
-  /// </summary>
-  internal class Sqlite3 : SqliteBase
-  {
-    /// <summary>
-    /// The opaque pointer returned to us by the sqlite provider
-    /// </summary>
-    protected IntPtr              _sql;
-    /// <summary>
-    /// The user-defined functions registered on this connection
-    /// </summary>
-    protected SqliteFunction[] _functionsArray;
-
-    internal Sqlite3(SqliteDateFormats fmt)
-      : base(fmt)
-    {
-    }
-
-    protected override void Dispose(bool bDisposing)
-    {
-      Close();
-    }
-
-    internal override void Close()
-    {
-      if (_sql != IntPtr.Zero)
-      {
-        int n = UnsafeNativeMethods.sqlite3_close(_sql);
-        if (n > 0) throw new SqliteException(n, SqliteLastError());
-      }
-      _sql = IntPtr.Zero;
-    }
-
-    internal override void Cancel()
-    {
-      UnsafeNativeMethods.sqlite3_interrupt(_sql);
-    }
-
-    internal override string Version
-    {
-      get
-      {
-	      return ToString (UnsafeNativeMethods.sqlite3_libversion());
-      }
-    }
-
-    internal override int Changes
-    {
-      get
-      {
-        return UnsafeNativeMethods.sqlite3_changes(_sql);
-      }
-    }
-
-    internal override void Open(string strFilename)
-    {
-      if (_sql != IntPtr.Zero) return;
-      int n = UnsafeNativeMethods.sqlite3_open(ToUTF8(strFilename), out _sql);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-
-      _functionsArray = SqliteFunction.BindFunctions(this);
-    }
-
-    internal override void SetTimeout(int nTimeoutMS)
-    {
-      int n = UnsafeNativeMethods.sqlite3_busy_timeout(_sql, nTimeoutMS);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override bool Step(SqliteStatement stmt)
-    {
-      int n;
-      long timeout = 0;
-      Random rnd = null;
-
-      while (true)
-      {
-        n = UnsafeNativeMethods.sqlite3_step(stmt._sqlite_stmt);
-
-        if (n == 100) return true;
-        if (n == 101) return false;
-
-        if (n > 0)
-        {
-          int r;
-
-          // An error occurred, attempt to reset the statement.  If the reset worked because the
-          // schema has changed, re-try the step again.  If it errored our because the database
-          // is locked, then keep retrying until the command timeout occurs.
-          r = Reset(stmt);
-
-          if (r == 0)
-            throw new SqliteException(n, SqliteLastError());
-
-          else if (r == 6 && stmt._command != null) // SQLITE_LOCKED
-          {
-            // Keep trying
-            if (timeout == 0) // First time we've encountered the lock
-            {
-              timeout = Environment.TickCount + (stmt._command._commandTimeout * 1000);
-              rnd = new Random();
-            }
-            // If we've exceeded the command's timeout, give up and throw an error
-            if (Environment.TickCount - timeout > 0)
-            {
-              throw new SqliteException(r, SqliteLastError());
-            }
-            else
-            {
-              // Otherwise sleep for a random amount of time up to 250ms
-              UnsafeNativeMethods.sqlite3_sleep((uint)rnd.Next(1, 250));
-            }
-          }
-
-        }
-      }
-    }
-
-    internal override void FinalizeStatement(SqliteStatement stmt)
-    {
-      if (stmt._sqlite_stmt != IntPtr.Zero)
-      {
-        int n = UnsafeNativeMethods.sqlite3_finalize(stmt._sqlite_stmt);
-        if (n > 0) throw new SqliteException(n, SqliteLastError());
-      }
-      stmt._sqlite_stmt = IntPtr.Zero;
-    }
-
-    internal override int Reset(SqliteStatement stmt)
-    {
-      int n;
-
-      n = UnsafeNativeMethods.sqlite3_reset(stmt._sqlite_stmt);
-
-      // If the schema changed, try and re-prepare it
-      if (n == 17) // SQLITE_SCHEMA
-      {
-        // Recreate a dummy statement
-        string str;
-        using (SqliteStatement tmp = Prepare(stmt._sqlStatement, null, out str))
-        {
-          // Finalize the existing statement
-          FinalizeStatement(stmt);
-
-          // Reassign a new statement pointer to the old statement and clear the temporary one
-          stmt._sqlite_stmt = tmp._sqlite_stmt;
-          tmp._sqlite_stmt = IntPtr.Zero;
-
-          // Reapply parameters
-          stmt.BindParameters();
-        }
-        return -1; // Reset was OK, with schema change
-      }
-      else if (n == 6) // SQLITE_LOCKED
-        return n;
-
-      if (n > 0)
-        throw new SqliteException(n, SqliteLastError());
-
-      return 0; // We reset OK, no schema changes
-    }
-
-    internal override string SqliteLastError()
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_errmsg(_sql));
-    }
-
-    internal override SqliteStatement Prepare(string strSql, SqliteStatement previous, out string strRemain)
-    {
-      IntPtr stmt = IntPtr.Zero;
-      IntPtr ptr = IntPtr.Zero;
-      int n = 17;
-      int retries = 0;
-      byte[] b = ToUTF8(strSql);
-      string typedefs = null;
-      SqliteStatement cmd = null;
-      GCHandle handle = GCHandle.Alloc(b, GCHandleType.Pinned);
-      IntPtr psql = handle.AddrOfPinnedObject();
-
-      try
-      {
-        while (n == 17 && retries < 3)
-        {
-		try {
-			n = UnsafeNativeMethods.sqlite3_prepare_v2(_sql, psql, b.Length - 1, out stmt, out ptr);
-		} catch (EntryPointNotFoundException) {
-			n = UnsafeNativeMethods.sqlite3_prepare (_sql, psql, b.Length - 1, out stmt, out ptr);
-		}
-		
-          retries++;
-
-          if (n == 1)
-          {
-            if (String.Compare(SqliteLastError(), "near \"TYPES\": syntax error", StringComparison.OrdinalIgnoreCase) == 0)
-            {
-              int pos = strSql.IndexOf(';');
-              if (pos == -1) pos = strSql.Length - 1;
-
-              typedefs = strSql.Substring(0, pos + 1);
-              strSql = strSql.Substring(pos + 1);
-
-              strRemain = "";
-
-              while (cmd == null && strSql.Length > 0)
-              {
-                cmd = Prepare(strSql, previous, out strRemain);
-                strSql = strRemain;
-              }
-
-              if (cmd != null)
-                cmd.SetTypes(typedefs);
-
-              return cmd;
-            }
-          }
-        }
-
-        if (n > 0) throw new SqliteException(n, SqliteLastError());
-
-        strRemain = UTF8ToString(ptr);
-
-        if (stmt != IntPtr.Zero) cmd = new SqliteStatement(this, stmt, strSql.Substring(0, strSql.Length - strRemain.Length), previous);
-
-        return cmd;
-      }
-      finally
-      {
-        handle.Free();
-      }
-    }
-
-    internal override void Bind_Double(SqliteStatement stmt, int index, double value)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_double(stmt._sqlite_stmt, index, value);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_Int32(SqliteStatement stmt, int index, int value)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_int(stmt._sqlite_stmt, index, value);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_Int64(SqliteStatement stmt, int index, long value)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_int64(stmt._sqlite_stmt, index, value);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_Text(SqliteStatement stmt, int index, string value)
-    {
-      byte[] b = ToUTF8(value);
-      int n = UnsafeNativeMethods.sqlite3_bind_text(stmt._sqlite_stmt, index, b, b.Length - 1, (IntPtr)(-1));
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_DateTime(SqliteStatement stmt, int index, DateTime dt)
-    {
-      byte[] b = ToUTF8(dt);
-      int n = UnsafeNativeMethods.sqlite3_bind_text(stmt._sqlite_stmt, index, b, b.Length - 1, (IntPtr)(-1));
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_Blob(SqliteStatement stmt, int index, byte[] blobData)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_blob(stmt._sqlite_stmt, index, blobData, blobData.Length, (IntPtr)(-1));
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void Bind_Null(SqliteStatement stmt, int index)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_null(stmt._sqlite_stmt, index);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override int Bind_ParamCount(SqliteStatement stmt)
-    {
-      return UnsafeNativeMethods.sqlite3_bind_parameter_count(stmt._sqlite_stmt);
-    }
-
-    internal override string Bind_ParamName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_bind_parameter_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override int Bind_ParamIndex(SqliteStatement stmt, string paramName)
-    {
-      return UnsafeNativeMethods.sqlite3_bind_parameter_index(stmt._sqlite_stmt, ToUTF8(paramName));
-    }
-
-    internal override int ColumnCount(SqliteStatement stmt)
-    {
-      return UnsafeNativeMethods.sqlite3_column_count(stmt._sqlite_stmt);
-    }
-
-    internal override string ColumnName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override TypeAffinity ColumnAffinity(SqliteStatement stmt, int index)
-    {
-      return UnsafeNativeMethods.sqlite3_column_type(stmt._sqlite_stmt, index);
-    }
-
-    internal override string ColumnType(SqliteStatement stmt, int index, out TypeAffinity nAffinity)
-    {
-      IntPtr p = UnsafeNativeMethods.sqlite3_column_decltype(stmt._sqlite_stmt, index);
-      nAffinity = ColumnAffinity(stmt, index);
-
-      if (p != IntPtr.Zero) return base.ToString(p);
-      else
-      {
-        string[] ar = stmt.TypeDefinitions;
-        if (ar != null)
-        {
-          if (index < ar.Length)
-            return ar[index];
-        }
-
-        switch (nAffinity)
-        {
-          case TypeAffinity.Int64:
-            return "BIGINT";
-          case TypeAffinity.Double:
-            return "DOUBLE";
-          case TypeAffinity.Blob:
-            return "BLOB";
-          default:
-            return "TEXT";
-        }
-      }
-    }
-
-    internal override int ColumnIndex(SqliteStatement stmt, string columnName)
-    {
-      int x = ColumnCount(stmt);
-
-      for (int n = 0; n < x; n++)
-      {
-        if (String.Compare(columnName, ColumnName(stmt, n), true, CultureInfo.InvariantCulture) == 0)
-          return n;
-      }
-      return -1;
-    }
-
-    internal override string ColumnOriginalName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_origin_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override string ColumnDatabaseName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_database_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override string ColumnTableName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_table_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override void ColumnMetaData(string dataBase, string table, string column, out string dataType,
-					  out string collateSequence, out bool notNull, out bool primaryKey,
-					  out bool autoIncrement)
-    {
-      IntPtr dataTypePtr;
-      IntPtr collSeqPtr;
-      int nnotNull;
-      int nprimaryKey;
-      int nautoInc;
-      int n;
-
-      n = UnsafeNativeMethods.sqlite3_table_column_metadata(_sql, ToUTF8(dataBase), ToUTF8(table), ToUTF8(column),
-							    out dataTypePtr, out collSeqPtr, out nnotNull,
-							    out nprimaryKey, out nautoInc);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-
-      dataType = base.ToString(dataTypePtr);
-      collateSequence = base.ToString(collSeqPtr);
-
-      notNull = (nnotNull == 1);
-      primaryKey = (nprimaryKey == 1);
-      autoIncrement = (nautoInc == 1);
-    }
-
-    internal override double GetDouble(SqliteStatement stmt, int index)
-    {
-      return UnsafeNativeMethods.sqlite3_column_double(stmt._sqlite_stmt, index);
-    }
-
-    internal override int GetInt32(SqliteStatement stmt, int index)
-    {
-      return UnsafeNativeMethods.sqlite3_column_int(stmt._sqlite_stmt, index);
-    }
-
-    internal override long GetInt64(SqliteStatement stmt, int index)
-    {
-      return UnsafeNativeMethods.sqlite3_column_int64(stmt._sqlite_stmt, index);
-    }
-
-    internal override string GetText(SqliteStatement stmt, int index)
-    {
-	    return ToString (UnsafeNativeMethods.sqlite3_column_text(stmt._sqlite_stmt, index));
-    }
-
-    internal override DateTime GetDateTime(SqliteStatement stmt, int index)
-    {
-	    return ToDateTime(GetText (stmt, index));
-    }
-
-    internal override long GetBytes(SqliteStatement stmt, int index, int nDataOffset, byte[] bDest, int nStart, int nLength)
-    {
-      IntPtr ptr;
-      int nlen;
-      int nCopied = nLength;
-
-      nlen = UnsafeNativeMethods.sqlite3_column_bytes(stmt._sqlite_stmt, index);
-      ptr = UnsafeNativeMethods.sqlite3_column_blob(stmt._sqlite_stmt, index);
-
-      if (bDest == null) return nlen;
-
-      if (nCopied + nStart > bDest.Length) nCopied = bDest.Length - nStart;
-      if (nCopied + nDataOffset > nlen) nCopied = nlen - nDataOffset;
-
-	  unsafe {
-		  if (nCopied > 0)
-			  Marshal.Copy((IntPtr)((byte*)ptr + nDataOffset), bDest, nStart, nCopied);
-		  else nCopied = 0;
-	  }
-
-      return nCopied;
-    }
-
-    internal override long GetChars(SqliteStatement stmt, int index, int nDataOffset, char[] bDest, int nStart, int nLength)
-    {
-      int nlen;
-      int nCopied = nLength;
-
-      string str = GetText(stmt, index);
-      nlen = str.Length;
-
-      if (bDest == null) return nlen;
-
-      if (nCopied + nStart > bDest.Length) nCopied = bDest.Length - nStart;
-      if (nCopied + nDataOffset > nlen) nCopied = nlen - nDataOffset;
-
-      if (nCopied > 0)
-        str.CopyTo(nDataOffset, bDest, nStart, nCopied);
-      else nCopied = 0;
-
-      return nCopied;
-    }
-
-    internal override bool IsNull(SqliteStatement stmt, int index)
-    {
-      return (ColumnAffinity(stmt, index) == TypeAffinity.Null);
-    }
-
-    internal override int AggregateCount(IntPtr context)
-    {
-      return UnsafeNativeMethods.sqlite3_aggregate_count(context);
-    }
-
-    internal override void CreateFunction(string strFunction, int nArgs, SqliteCallback func, SqliteCallback funcstep, SqliteFinalCallback funcfinal)
-    {
-      int n = UnsafeNativeMethods.sqlite3_create_function(_sql, ToUTF8(strFunction), nArgs, 1, IntPtr.Zero, func, funcstep, funcfinal);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void CreateCollation(string strCollation, SqliteCollation func)
-    {
-      int n = UnsafeNativeMethods.sqlite3_create_collation(_sql, ToUTF8(strCollation), 1, IntPtr.Zero, func);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override long GetParamValueBytes(IntPtr p, int nDataOffset, byte[] bDest, int nStart, int nLength)
-    {
-      IntPtr ptr;
-      int nlen;
-      int nCopied = nLength;
-
-      nlen = UnsafeNativeMethods.sqlite3_value_bytes(p);
-      ptr = UnsafeNativeMethods.sqlite3_value_blob(p);
-
-      if (bDest == null) return nlen;
-
-      if (nCopied + nStart > bDest.Length) nCopied = bDest.Length - nStart;
-      if (nCopied + nDataOffset > nlen) nCopied = nlen - nDataOffset;
-
-	  unsafe {
-		  if (nCopied > 0)
-			  Marshal.Copy((IntPtr)((byte*)ptr + nDataOffset), bDest, nStart, nCopied);
-		  else nCopied = 0;
-	  }
-
-      return nCopied;
-    }
-
-    internal override double GetParamValueDouble(IntPtr ptr)
-    {
-      return UnsafeNativeMethods.sqlite3_value_double(ptr);
-    }
-
-    internal override int GetParamValueInt32(IntPtr ptr)
-    {
-      return UnsafeNativeMethods.sqlite3_value_int(ptr);
-    }
-
-    internal override long GetParamValueInt64(IntPtr ptr)
-    {
-      return UnsafeNativeMethods.sqlite3_value_int64(ptr);
-    }
-
-    internal override string GetParamValueText(IntPtr ptr)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_value_text(ptr));
-    }
-
-    internal override TypeAffinity GetParamValueType(IntPtr ptr)
-    {
-      return UnsafeNativeMethods.sqlite3_value_type(ptr);
-    }
-
-    internal override void ReturnBlob(IntPtr context, byte[] value)
-    {
-      UnsafeNativeMethods.sqlite3_result_blob(context, value, value.Length, (IntPtr)(-1));
-    }
-
-    internal override void ReturnDouble(IntPtr context, double value)
-    {
-      UnsafeNativeMethods.sqlite3_result_double(context, value);
-    }
-
-    internal override void ReturnError(IntPtr context, string value)
-    {
-      UnsafeNativeMethods.sqlite3_result_error(context, ToUTF8(value), value.Length);
-    }
-
-    internal override void ReturnInt32(IntPtr context, int value)
-    {
-      UnsafeNativeMethods.sqlite3_result_int(context, value);
-    }
-
-    internal override void ReturnInt64(IntPtr context, long value)
-    {
-      UnsafeNativeMethods.sqlite3_result_int64(context, value);
-    }
-
-    internal override void ReturnNull(IntPtr context)
-    {
-      UnsafeNativeMethods.sqlite3_result_null(context);
-    }
-
-    internal override void ReturnText(IntPtr context, string value)
-    {
-      byte[] b = ToUTF8(value);
-      UnsafeNativeMethods.sqlite3_result_text(context, ToUTF8(value), b.Length - 1, (IntPtr)(-1));
-    }
-
-    internal override IntPtr AggregateContext(IntPtr context)
-    {
-      return UnsafeNativeMethods.sqlite3_aggregate_context(context, 1);
-    }
-
-    internal override void SetUpdateHook(SqliteUpdateCallback func)
-    {
-      UnsafeNativeMethods.sqlite3_update_hook(_sql, func);
-    }
-
-    internal override void SetCommitHook(SqliteCommitCallback func)
-    {
-      UnsafeNativeMethods.sqlite3_commit_hook(_sql, func);
-    }
-
-    internal override void SetRollbackHook(SqliteRollbackCallback func)
-    {
-      UnsafeNativeMethods.sqlite3_rollback_hook(_sql, func);
-    }
-
-    /// <summary>
-    /// Helper function to retrieve a column of data from an active statement.
-    /// </summary>
-    /// <param name="stmt">The statement being step()'d through</param>
-    /// <param name="index">The column index to retrieve</param>
-    /// <param name="typ">The type of data contained in the column.  If Uninitialized, this function will retrieve the datatype information.</param>
-    /// <returns>Returns the data in the column</returns>
-    internal override object GetValue(SqliteStatement stmt, int index, SqliteType typ)
-    {
-      if (typ.Affinity == 0) typ = SqliteConvert.ColumnToType(stmt, index);
-      if (IsNull(stmt, index)) return DBNull.Value;
-
-      Type t = SqliteConvert.SqliteTypeToType(typ);
-
-      switch (TypeToAffinity(t))
-      {
-        case TypeAffinity.Blob:
-          if (typ.Type == DbType.Guid && typ.Affinity == TypeAffinity.Text)
-            return new Guid(GetText(stmt, index));
-
-          int n = (int)GetBytes(stmt, index, 0, null, 0, 0);
-          byte[] b = new byte[n];
-          GetBytes(stmt, index, 0, b, 0, n);
-
-          if (typ.Type == DbType.Guid && n == 16)
-            return new Guid(b);
-
-          return b;
-        case TypeAffinity.DateTime:
-          return GetDateTime(stmt, index);
-        case TypeAffinity.Double:
-          return Convert.ChangeType(GetDouble(stmt, index), t, null);
-        case TypeAffinity.Int64:
-          return Convert.ChangeType(GetInt64(stmt, index), t, null);
-        default:
-          return GetText(stmt, index);
-      }
-    }
-
-    internal override long GetLastInsertRowId ()
-    {
-	    return UnsafeNativeMethods.sqlite3_last_insert_rowid (_sql);
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3_UTF16.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3_UTF16.cs
deleted file mode 100644
index 0babde8..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLite3_UTF16.cs
+++ /dev/null
@@ -1,162 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLite3_UTF16.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for SQLite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Runtime.InteropServices;
-
-  /// <summary>
-  /// Alternate Sqlite3 object, overriding many text behaviors to support UTF-16 (Unicode)
-  /// </summary>
-  internal class Sqlite3_UTF16 : Sqlite3
-  {
-    internal Sqlite3_UTF16(SqliteDateFormats fmt)
-      : base(fmt)
-    {
-    }
-
-    /// <summary>
-    /// Overrides SqliteConvert.ToString() to marshal UTF-16 strings instead of UTF-8
-    /// </summary>
-    /// <param name="b">A pointer to a UTF-16 string</param>
-    /// <param name="nbytelen">The length (IN BYTES) of the string</param>
-    /// <returns>A .NET string</returns>
-    public override string ToString(IntPtr b)
-    {
-      return Marshal.PtrToStringUni(b);
-    }
-
-    internal override string Version
-    {
-      get
-      {
-        return base.ToString(UnsafeNativeMethods.sqlite3_libversion());
-      }
-    }
-
-    internal override void Open(string strFilename)
-    {
-      if (_sql != IntPtr.Zero) return;
-      int n = UnsafeNativeMethods.sqlite3_open16(strFilename, out _sql);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-
-      _functionsArray = SqliteFunction.BindFunctions(this);
-    }
-
-    internal override string SqliteLastError()
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_errmsg16(_sql));
-    }
-
-    internal override void Bind_DateTime(SqliteStatement stmt, int index, DateTime dt)
-    {
-      Bind_Text(stmt, index, ToString(dt));
-    }
-
-    internal override string Bind_ParamName(SqliteStatement stmt, int index)
-    {
-      return base.ToString(UnsafeNativeMethods.sqlite3_bind_parameter_name(stmt._sqlite_stmt, index));
-    }
-
-    internal override void Bind_Text(SqliteStatement stmt, int index, string value)
-    {
-      int n = UnsafeNativeMethods.sqlite3_bind_text16(stmt._sqlite_stmt, index, value, value.Length * 2, -1);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override string ColumnName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_name16(stmt._sqlite_stmt, index));
-    }
-
-    internal override DateTime GetDateTime(SqliteStatement stmt, int index)
-    {
-      return ToDateTime(GetText(stmt, index));
-    }
-    internal override string GetText(SqliteStatement stmt, int index)
-    {
-	    return ToString (UnsafeNativeMethods.sqlite3_column_text16(stmt._sqlite_stmt, index));
-    }
-
-    internal override string ColumnOriginalName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_origin_name16(stmt._sqlite_stmt, index));
-    }
-
-    internal override string ColumnDatabaseName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_database_name16(stmt._sqlite_stmt, index));
-    }
-
-    internal override string ColumnTableName(SqliteStatement stmt, int index)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_column_table_name16(stmt._sqlite_stmt, index));
-    }
-
-    internal override void CreateFunction(string strFunction, int nArgs, SqliteCallback func, SqliteCallback funcstep, SqliteFinalCallback funcfinal)
-    {
-      int n = UnsafeNativeMethods.sqlite3_create_function16(_sql, strFunction, nArgs, 4, IntPtr.Zero, func, funcstep, funcfinal);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override void CreateCollation(string strCollation, SqliteCollation func)
-    {
-      int n = UnsafeNativeMethods.sqlite3_create_collation16(_sql, strCollation, 4, IntPtr.Zero, func);
-      if (n > 0) throw new SqliteException(n, SqliteLastError());
-    }
-
-    internal override string GetParamValueText(IntPtr ptr)
-    {
-      return ToString(UnsafeNativeMethods.sqlite3_value_text16(ptr));
-    }
-
-    internal override void ReturnError(IntPtr context, string value)
-    {
-      UnsafeNativeMethods.sqlite3_result_error16(context, value, value.Length);
-    }
-
-    internal override void ReturnText(IntPtr context, string value)
-    {
-      UnsafeNativeMethods.sqlite3_result_text16(context, value, value.Length, (IntPtr)(-1));
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteBase.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteBase.cs
deleted file mode 100644
index a7e3394..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteBase.cs
+++ /dev/null
@@ -1,195 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteBase.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for SQLite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Runtime.InteropServices;
-  using System.Collections.Generic;
-
-  /// <summary>
-  /// This internal class provides the foundation of Sqlite support.  It defines all the abstract members needed to implement
-  /// a Sqlite data provider, and inherits from SqliteConvert which allows for simple translations of string to and from Sqlite.
-  /// </summary>
-  internal abstract class SqliteBase : SqliteConvert, IDisposable
-  {
-    internal SqliteBase(SqliteDateFormats fmt)
-      : base(fmt) {}
-
-    /// <summary>
-    /// Returns a string representing the active version of Sqlite
-    /// </summary>
-    internal abstract string Version { get; }
-    /// <summary>
-    /// Returns the number of changes the last executing insert/update caused.
-    /// </summary>
-    internal abstract int    Changes { get; }
-    /// <summary>
-    /// Opens a database.
-    /// </summary>
-    /// <remarks>
-    /// Implementers should call SqliteFunction.BindFunctions() and save the array after opening a connection
-    /// to bind all attributed user-defined functions and collating sequences to the new connection.
-    /// </remarks>
-    /// <param name="strFilename">The filename of the database to open.  Sqlite automatically creates it if it doesn't exist.</param>
-    internal abstract void   Open(string strFilename);
-    /// <summary>
-    /// Closes the currently-open database.
-    /// </summary>
-    /// <remarks>
-    /// After the database has been closed implemeters should call SqliteFunction.UnbindFunctions() to deallocate all interop allocated
-    /// memory associated with the user-defined functions and collating sequences tied to the closed connection.
-    /// </remarks>
-    internal abstract void   Close();
-    /// <summary>
-    /// Sets the busy timeout on the connection.  SqliteCommand will call this before executing any command.
-    /// </summary>
-    /// <param name="nTimeoutMS">The number of milliseconds to wait before returning SQLITE_BUSY</param>
-    internal abstract void   SetTimeout(int nTimeoutMS);
-    /// <summary>
-    /// Returns the text of the last error issued by Sqlite
-    /// </summary>
-    /// <returns></returns>
-    internal abstract string SqliteLastError();
-
-    /// <summary>
-    /// Prepares a SQL statement for execution.
-    /// </summary>
-    /// <param name="strSql">The SQL command text to prepare</param>
-    /// <param name="previous">The previous statement in a multi-statement command, or null if no previous statement exists</param>
-    /// <param name="strRemain">The remainder of the statement that was not processed.  Each call to prepare parses the
-    /// SQL up to to either the end of the text or to the first semi-colon delimiter.  The remaining text is returned
-    /// here for a subsequent call to Prepare() until all the text has been processed.</param>
-    /// <returns>Returns an initialized SqliteStatement.</returns>
-    internal abstract SqliteStatement Prepare(string strSql, SqliteStatement previous, out string strRemain);
-    /// <summary>
-    /// Steps through a prepared statement.
-    /// </summary>
-    /// <param name="stmt">The SqliteStatement to step through</param>
-    /// <returns>True if a row was returned, False if not.</returns>
-    internal abstract bool Step(SqliteStatement stmt);
-    /// <summary>
-    /// Finalizes a prepared statement.
-    /// </summary>
-    /// <param name="stmt">The statement to finalize</param>
-    internal abstract void FinalizeStatement(SqliteStatement stmt);
-    /// <summary>
-    /// Resets a prepared statement so it can be executed again.  If the error returned is SQLITE_SCHEMA,
-    /// transparently attempt to rebuild the SQL statement and throw an error if that was not possible.
-    /// </summary>
-    /// <param name="stmt">The statement to reset</param>
-    /// <returns>Returns -1 if the schema changed while resetting, 0 if the reset was sucessful or 6 (SQLITE_LOCKED) if the reset failed due to a lock</returns>
-    internal abstract int Reset(SqliteStatement stmt);
-
-    internal abstract void Cancel();
-
-    internal abstract void Bind_Double(SqliteStatement stmt, int index, double value);
-    internal abstract void Bind_Int32(SqliteStatement stmt, int index, Int32 value);
-    internal abstract void Bind_Int64(SqliteStatement stmt, int index, Int64 value);
-    internal abstract void Bind_Text(SqliteStatement stmt, int index, string value);
-    internal abstract void Bind_Blob(SqliteStatement stmt, int index, byte[] blobData);
-    internal abstract void Bind_DateTime(SqliteStatement stmt, int index, DateTime dt);
-    internal abstract void Bind_Null(SqliteStatement stmt, int index);
-
-    internal abstract int    Bind_ParamCount(SqliteStatement stmt);
-    internal abstract string Bind_ParamName(SqliteStatement stmt, int index);
-    internal abstract int    Bind_ParamIndex(SqliteStatement stmt, string paramName);
-
-    internal abstract int    ColumnCount(SqliteStatement stmt);
-    internal abstract string ColumnName(SqliteStatement stmt, int index);
-    internal abstract TypeAffinity ColumnAffinity(SqliteStatement stmt, int index);
-    internal abstract string ColumnType(SqliteStatement stmt, int index, out TypeAffinity nAffinity);
-    internal abstract int    ColumnIndex(SqliteStatement stmt, string columnName);
-    internal abstract string ColumnOriginalName(SqliteStatement stmt, int index);
-    internal abstract string ColumnDatabaseName(SqliteStatement stmt, int index);
-    internal abstract string ColumnTableName(SqliteStatement stmt, int index);
-    internal abstract void ColumnMetaData(string dataBase, string table, string column, out string dataType, out string collateSequence, out bool notNull, out bool primaryKey, out bool autoIncrement);
-
-    internal abstract double   GetDouble(SqliteStatement stmt, int index);
-    internal abstract Int32    GetInt32(SqliteStatement stmt, int index);
-    internal abstract Int64    GetInt64(SqliteStatement stmt, int index);
-    internal abstract string   GetText(SqliteStatement stmt, int index);
-    internal abstract long     GetBytes(SqliteStatement stmt, int index, int nDataoffset, byte[] bDest, int nStart, int nLength);
-    internal abstract long     GetChars(SqliteStatement stmt, int index, int nDataoffset, char[] bDest, int nStart, int nLength);
-    internal abstract DateTime GetDateTime(SqliteStatement stmt, int index);
-    internal abstract bool     IsNull(SqliteStatement stmt, int index);
-
-    internal abstract void  CreateCollation(string strCollation, SqliteCollation func);
-    internal abstract void  CreateFunction(string strFunction, int nArgs, SqliteCallback func, SqliteCallback funcstep, SqliteFinalCallback funcfinal);
-
-    internal abstract int AggregateCount(IntPtr context);
-    internal abstract IntPtr AggregateContext(IntPtr context);
-
-    internal abstract long   GetParamValueBytes(IntPtr ptr, int nDataOffset, byte[] bDest, int nStart, int nLength);
-    internal abstract double GetParamValueDouble(IntPtr ptr);
-    internal abstract int    GetParamValueInt32(IntPtr ptr);
-    internal abstract Int64  GetParamValueInt64(IntPtr ptr);
-    internal abstract string GetParamValueText(IntPtr ptr);
-    internal abstract TypeAffinity GetParamValueType(IntPtr ptr);
-
-    internal abstract void ReturnBlob(IntPtr context, byte[] value);
-    internal abstract void ReturnDouble(IntPtr context, double value);
-    internal abstract void ReturnError(IntPtr context, string value);
-    internal abstract void ReturnInt32(IntPtr context, Int32 value);
-    internal abstract void ReturnInt64(IntPtr context, Int64 value);
-    internal abstract void ReturnNull(IntPtr context);
-    internal abstract void ReturnText(IntPtr context, string value);
-
-    internal abstract void SetUpdateHook(SqliteUpdateCallback func);
-    internal abstract void SetCommitHook(SqliteCommitCallback func);
-    internal abstract void SetRollbackHook(SqliteRollbackCallback func);
-
-    internal abstract long GetLastInsertRowId ();
-
-    internal abstract object GetValue(SqliteStatement stmt, int index, SqliteType typ);
-
-    protected virtual void Dispose(bool bDisposing)
-    {
-    }
-
-    public void Dispose()
-    {
-      Dispose(true);
-      GC.SuppressFinalize(this);
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommand.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommand.cs
deleted file mode 100644
index eb9d039..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommand.cs
+++ /dev/null
@@ -1,657 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteCommand.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for SQLite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Collections.Generic;
-  using System.ComponentModel;
-
-  /// <summary>
-  /// Sqlite implementation of DbCommand.
-  /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-  [Designer("Sqlite.Designer.SqliteCommandDesigner, Sqlite.Designer, Version=1.0.31.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"), ToolboxItem(true)]
-#endif
-  public sealed class SqliteCommand : DbCommand, ICloneable
-  {
-    /// <summary>
-    /// The command text this command is based on
-    /// </summary>
-    private string _commandText;
-    /// <summary>
-    /// The connection the command is associated with
-    /// </summary>
-    private SqliteConnection _cnn;
-    /// <summary>
-    /// Indicates whether or not a DataReader is active on the command.
-    /// </summary>
-    private SqliteDataReader _activeReader;
-    /// <summary>
-    /// The timeout for the command, kludged because Sqlite doesn't support per-command timeout values
-    /// </summary>
-    internal int _commandTimeout;
-    /// <summary>
-    /// Designer support
-    /// </summary>
-    private bool _designTimeVisible;
-    /// <summary>
-    /// Used by DbDataAdapter to determine updating behavior
-    /// </summary>
-    private UpdateRowSource _updateRowSource;
-    /// <summary>
-    /// The collection of parameters for the command
-    /// </summary>
-    private SqliteParameterCollection _parameterCollection;
-    /// <summary>
-    /// The SQL command text, broken into individual SQL statements as they are executed
-    /// </summary>
-    internal List<SqliteStatement> _statementList;
-    /// <summary>
-    /// Unprocessed SQL text that has not been executed
-    /// </summary>
-    internal string _remainingText;
-    /// <summary>
-    /// Transaction associated with this command
-    /// </summary>
-    private SqliteTransaction _transaction;
-
-    ///<overloads>
-    /// Constructs a new SqliteCommand
-    /// </overloads>
-    /// <summary>
-    /// Default constructor
-    /// </summary>
-    public SqliteCommand() :this(null, null)
-    {
-    }
-
-    /// <summary>
-    /// Initializes the command with the given command text
-    /// </summary>
-    /// <param name="commandText">The SQL command text</param>
-    public SqliteCommand(string commandText)
-      : this(commandText, null, null)
-    {
-    }
-
-    /// <summary>
-    /// Initializes the command with the given SQL command text and attach the command to the specified
-    /// connection.
-    /// </summary>
-    /// <param name="commandText">The SQL command text</param>
-    /// <param name="connection">The connection to associate with the command</param>
-    public SqliteCommand(string commandText, SqliteConnection connection)
-      : this(commandText, connection, null)
-    {
-    }
-
-    /// <summary>
-    /// Initializes the command and associates it with the specified connection.
-    /// </summary>
-    /// <param name="connection">The connection to associate with the command</param>
-    public SqliteCommand(SqliteConnection connection)
-      : this(null, connection, null)
-    {
-    }
-
-    private SqliteCommand(SqliteCommand source) : this(source.CommandText, source.Connection, source.Transaction)
-    {
-      CommandTimeout = source.CommandTimeout;
-      DesignTimeVisible = source.DesignTimeVisible;
-      UpdatedRowSource = source.UpdatedRowSource;
-
-      foreach (SqliteParameter param in source._parameterCollection)
-      {
-        Parameters.Add(param.Clone());
-      }
-    }
-
-    /// <summary>
-    /// Initializes a command with the given SQL, connection and transaction
-    /// </summary>
-    /// <param name="commandText">The SQL command text</param>
-    /// <param name="connection">The connection to associate with the command</param>
-    /// <param name="transaction">The transaction the command should be associated with</param>
-    public SqliteCommand(string commandText, SqliteConnection connection, SqliteTransaction transaction)
-    {
-      _statementList = null;
-      _activeReader = null;
-      _commandTimeout = connection != null ? connection._busyTimeout : 30;
-      _parameterCollection = new SqliteParameterCollection(this);
-      _designTimeVisible = true;
-      _updateRowSource = UpdateRowSource.FirstReturnedRecord;
-      _transaction = null;
-
-      if (commandText != null)
-        CommandText = commandText;
-
-      if (connection != null)
-        DbConnection = connection;
-
-      if (transaction != null)
-        Transaction = transaction;
-    }
-
-    /// <summary>
-    /// Disposes of the command and clears all member variables
-    /// </summary>
-    /// <param name="disposing">Whether or not the class is being explicitly or implicitly disposed</param>
-    protected override void Dispose(bool disposing)
-    {
-      base.Dispose(disposing);
-
-      // If a reader is active on this command, don't destroy it completely
-      if (_activeReader != null)
-      {
-        _activeReader._disposeCommand = true;
-        return;
-      }
-
-      Connection = null;
-      _parameterCollection.Clear();
-      _commandText = null;
-    }
-
-    /// <summary>
-    /// Clears and destroys all statements currently prepared
-    /// </summary>
-    internal void ClearCommands()
-    {
-      if (_activeReader != null)
-        _activeReader.Close();
-
-      if (_statementList == null) return;
-
-      int x = _statementList.Count;
-      for (int n = 0; n < x; n++)
-        _statementList[n].Dispose();
-
-      _statementList = null;
-
-      _parameterCollection.Unbind();
-    }
-
-    /// <summary>
-    /// Builds an array of prepared statements for each complete SQL statement in the command text
-    /// </summary>
-    internal SqliteStatement BuildNextCommand()
-    {
-      SqliteStatement stmt = null;
-
-      try
-      {
-        if (_statementList == null)
-          _remainingText = _commandText;
-
-        stmt = _cnn._sql.Prepare(_remainingText, (_statementList == null) ? null : _statementList[_statementList.Count - 1], out _remainingText);
-        if (stmt != null)
-        {
-          stmt._command = this;
-          if (_statementList == null)
-            _statementList = new List<SqliteStatement>();
-
-          _statementList.Add(stmt);
-
-          _parameterCollection.MapParameters(stmt);
-          stmt.BindParameters();
-        }
-        return stmt;
-      }
-      catch (Exception)
-      {
-        if (stmt != null)
-        {
-          if (_statementList.Contains(stmt))
-            _statementList.Remove(stmt);
-
-          stmt.Dispose();
-        }
-
-        // If we threw an error compiling the statement, we cannot continue on so set the remaining text to null.
-        _remainingText = null;
-
-        throw;
-      }
-    }
-
-    internal SqliteStatement GetStatement(int index)
-    {
-      // Haven't built any statements yet
-      if (_statementList == null) return BuildNextCommand();
-
-      // If we're at the last built statement and want the next unbuilt statement, then build it
-      if (index == _statementList.Count)
-      {
-        if (String.IsNullOrEmpty(_remainingText) == false) return BuildNextCommand();
-        else return null; // No more commands
-      }
-
-      SqliteStatement stmt = _statementList[index];
-      stmt.BindParameters();
-
-      return stmt;
-    }
-
-    /// <summary>
-    /// Not implemented
-    /// </summary>
-    public override void Cancel()
-    {
-    }
-
-    /// <summary>
-    /// The SQL command text associated with the command
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue(""), RefreshProperties(RefreshProperties.All), Editor("Microsoft.VSDesigner.Data.SQL.Design.SqlCommandTextEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public override string CommandText
-    {
-      get
-      {
-        return _commandText;
-      }
-      set
-      {
-        if (_commandText == value) return;
-
-        if (_activeReader != null)
-        {
-          throw new InvalidOperationException("Cannot set CommandText while a DataReader is active");
-        }
-
-        ClearCommands();
-        _commandText = value;
-
-        if (_cnn == null) return;
-      }
-    }
-
-    /// <summary>
-    /// The amount of time to wait for the connection to become available before erroring out
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((int)30)]
-#endif
-    public override int CommandTimeout
-    {
-      get
-      {
-        return _commandTimeout;
-      }
-      set
-      {
-        _commandTimeout = value;
-      }
-    }
-
-    /// <summary>
-    /// The type of the command.  Sqlite only supports CommandType.Text
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [RefreshProperties(RefreshProperties.All), DefaultValue(CommandType.Text)]
-#endif
-    public override CommandType CommandType
-    {
-      get
-      {
-        return CommandType.Text;
-      }
-      set
-      {
-        if (value != CommandType.Text)
-        {
-          throw new NotSupportedException();
-        }
-      }
-    }
-
-    /// <summary>
-    /// Forwards to the local CreateParameter() function
-    /// </summary>
-    /// <returns></returns>
-    protected override DbParameter CreateDbParameter()
-    {
-      return CreateParameter();
-    }
-
-    /// <summary>
-    /// Create a new parameter
-    /// </summary>
-    /// <returns></returns>
-    public new SqliteParameter CreateParameter()
-    {
-      return new SqliteParameter();
-    }
-
-    /// <summary>
-    /// The connection associated with this command
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((string)null), Editor("Microsoft.VSDesigner.Data.Design.DbConnectionEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public new SqliteConnection Connection
-    {
-      get { return _cnn; }
-      set
-      {
-        if (_activeReader != null)
-          throw new InvalidOperationException("Cannot set Connection while a DataReader is active");
-
-        if (_cnn != null)
-        {
-          ClearCommands();
-          _cnn.RemoveCommand(this);
-        }
-
-        _cnn = value;
-
-        if (_cnn != null)
-          _cnn.AddCommand(this);
-      }
-    }
-
-    /// <summary>
-    /// Forwards to the local Connection property
-    /// </summary>
-    protected override DbConnection DbConnection
-    {
-      get
-      {
-        return Connection;
-      }
-      set
-      {
-        Connection = (SqliteConnection)value;
-      }
-    }
-
-    /// <summary>
-    /// Returns the SqliteParameterCollection for the given command
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
-#endif
-    public new SqliteParameterCollection Parameters
-    {
-      get { return _parameterCollection; }
-    }
-
-    /// <summary>
-    /// Forwards to the local Parameters property
-    /// </summary>
-    protected override DbParameterCollection DbParameterCollection
-    {
-      get
-      {
-        return Parameters;
-      }
-    }
-
-    /// <summary>
-    /// The transaction associated with this command.  Sqlite only supports one transaction per connection, so this property forwards to the
-    /// command's underlying connection.
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
-#endif
-    public new SqliteTransaction Transaction
-    {
-      get { return _transaction; }
-      set
-      {
-        if (_cnn != null)
-        {
-          if (_activeReader != null)
-            throw new InvalidOperationException("Cannot set Transaction while a DataReader is active");
-
-          if (value != null)
-          {
-            if (value._cnn != _cnn)
-              throw new ArgumentException("Transaction is not associated with the command's connection");
-          }
-          _transaction = value;
-        }
-        else if (value != null)
-          throw new ArgumentOutOfRangeException("SqliteTransaction", "Not associated with a connection");
-      }
-    }
-
-    /// <summary>
-    /// Forwards to the local Transaction property
-    /// </summary>
-    protected override DbTransaction DbTransaction
-    {
-      get
-      {
-        return Transaction;
-      }
-      set
-      {
-        Transaction = (SqliteTransaction)value;
-      }
-    }
-
-    /// <summary>
-    /// This function ensures there are no active readers, that we have a valid connection,
-    /// that the connection is open, that all statements are prepared and all parameters are assigned
-    /// in preparation for allocating a data reader.
-    /// </summary>
-    private void InitializeForReader()
-    {
-      if (_activeReader != null)
-        throw new InvalidOperationException("DataReader already active on this command");
-
-      if (_cnn == null)
-        throw new InvalidOperationException("No connection associated with this command");
-
-      if (_cnn.State != ConnectionState.Open)
-        throw new InvalidOperationException("Database is not open");
-
-      // Map all parameters for statements already built
-      _parameterCollection.MapParameters(null);
-
-      // Set the default command timeout
-      _cnn._sql.SetTimeout(_commandTimeout * 1000);
-    }
-
-    /// <summary>
-    /// Creates a new SqliteDataReader to execute/iterate the array of Sqlite prepared statements
-    /// </summary>
-    /// <param name="behavior">The behavior the data reader should adopt</param>
-    /// <returns>Returns a SqliteDataReader object</returns>
-    protected override DbDataReader ExecuteDbDataReader(CommandBehavior behavior)
-    {
-      return ExecuteReader(behavior);
-    }
-
-    /// <summary>
-    /// Overrides the default behavior to return a SqliteDataReader specialization class
-    /// </summary>
-    /// <param name="behavior">The flags to be associated with the reader</param>
-    /// <returns>A SqliteDataReader</returns>
-    public new SqliteDataReader ExecuteReader(CommandBehavior behavior)
-    {
-      InitializeForReader();
-
-      SqliteDataReader rd = new SqliteDataReader(this, behavior);
-      _activeReader = rd;
-
-      return rd;
-    }
-
-    /// <summary>
-    /// Overrides the default behavior of DbDataReader to return a specialized SqliteDataReader class
-    /// </summary>
-    /// <returns>A SqliteDataReader</returns>
-    public new SqliteDataReader ExecuteReader()
-    {
-      return ExecuteReader(CommandBehavior.Default);
-    }
-
-    /// <summary>
-    /// Called by the SqliteDataReader when the data reader is closed.
-    /// </summary>
-    internal void ClearDataReader()
-    {
-      _activeReader = null;
-    }
-
-    /// <summary>
-    /// Execute the command and return the number of rows inserted/updated affected by it.
-    /// </summary>
-    /// <returns></returns>
-    public override int ExecuteNonQuery()
-    {
-      InitializeForReader();
-
-      int nAffected = 0;
-      int x = 0;
-      SqliteStatement stmt;
-
-      for(;;)
-      {
-        stmt = GetStatement(x);
-        x++;
-        if (stmt == null) break;
-
-        _cnn._sql.Step(stmt);
-        nAffected += _cnn._sql.Changes;
-        _cnn._sql.Reset(stmt);
-      }
-
-      return nAffected;
-    }
-
-    /// <summary>
-    /// Execute the command and return the first column of the first row of the resultset
-    /// (if present), or null if no resultset was returned.
-    /// </summary>
-    /// <returns>The first column of the first row of the first resultset from the query</returns>
-    public override object ExecuteScalar()
-    {
-      InitializeForReader();
-
-      int x = 0;
-      object ret = null;
-      SqliteType typ = new SqliteType();
-      SqliteStatement stmt;
-
-      // We step through every statement in the command, but only grab the first row of the first resultset.
-      // We keep going even after obtaining it.
-      for (;;)
-      {
-        stmt = GetStatement(x);
-        x++;
-        if (stmt == null) break;
-
-        if (_cnn._sql.Step(stmt) == true && ret == null)
-        {
-          ret = _cnn._sql.GetValue(stmt, 0, typ);
-        }
-        _cnn._sql.Reset(stmt);
-      }
-
-      return ret;
-    }
-
-    /// <summary>
-    /// Does nothing.  Commands are prepared as they are executed the first time, and kept in prepared state afterwards.
-    /// </summary>
-    public override void Prepare()
-    {
-    }
-
-    /// <summary>
-    /// Sets the method the SqliteCommandBuilder uses to determine how to update inserted or updated rows in a DataTable.
-    /// </summary>
-    [DefaultValue(UpdateRowSource.FirstReturnedRecord)]
-    public override UpdateRowSource UpdatedRowSource
-    {
-      get
-      {
-        return _updateRowSource;
-      }
-      set
-      {
-        _updateRowSource = value;
-      }
-    }
-
-    /// <summary>
-    /// Determines if the command is visible at design time.  Defaults to True.
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DesignOnly(true), Browsable(false), DefaultValue(true), EditorBrowsable(EditorBrowsableState.Never)]
-#endif
-    public override bool DesignTimeVisible
-    {
-      get
-      {
-        return _designTimeVisible;
-      }
-      set
-      {
-        _designTimeVisible = value;
-#if !PLATFORM_COMPACTFRAMEWORK
-        TypeDescriptor.Refresh(this);
-#endif
-      }
-    }
-
-    /// <summary>
-    /// Clones a command, including all its parameters
-    /// </summary>
-    /// <returns>A new SqliteCommand with the same commandtext, connection and parameters</returns>
-    public object Clone()
-    {
-      return new SqliteCommand(this);
-    }
-
-    public long LastInsertRowID ()
-    {
-	    return _cnn.LastInsertRowId;
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommandBuilder.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommandBuilder.cs
deleted file mode 100644
index 0910a2d..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteCommandBuilder.cs
+++ /dev/null
@@ -1,375 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteCommandBuilder.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Globalization;
-  using System.ComponentModel;
-
-  /// <summary>
-  /// Sqlite implementation of DbCommandBuilder.
-  /// </summary>
-  public sealed class SqliteCommandBuilder : DbCommandBuilder
-  {
-    private EventHandler<RowUpdatingEventArgs> _handler;
-
-    /// <summary>
-    /// Default constructor
-    /// </summary>
-    public SqliteCommandBuilder() : this(null)
-    {
-    }
-
-    /// <summary>
-    /// Initializes the command builder and associates it with the specified data adapter.
-    /// </summary>
-    /// <param name="adp"></param>
-    public SqliteCommandBuilder(SqliteDataAdapter adp)
-    {
-      QuotePrefix = "[";
-      QuoteSuffix = "]";
-      DataAdapter = adp;
-    }
-
-    /// <summary>
-    /// Minimal amount of parameter processing.  Primarily sets the DbType for the parameter equal to the provider type in the schema
-    /// </summary>
-    /// <param name="parameter">The parameter to use in applying custom behaviors to a row</param>
-    /// <param name="row">The row to apply the parameter to</param>
-    /// <param name="statementType">The type of statement</param>
-    /// <param name="whereClause">Whether the application of the parameter is part of a WHERE clause</param>
-    protected override void ApplyParameterInfo(DbParameter parameter, DataRow row, StatementType statementType, bool whereClause)
-    {
-      SqliteParameter param = (SqliteParameter)parameter;
-      param.DbType = (DbType)row[SchemaTableColumn.ProviderType];
-    }
-
-    /// <summary>
-    /// Returns a valid named parameter
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter</param>
-    /// <returns>Error</returns>
-    protected override string GetParameterName(string parameterName)
-    {
-      return String.Format(CultureInfo.InvariantCulture, "@{0}", parameterName);
-    }
-
-    /// <summary>
-    /// Returns a named parameter for the given ordinal
-    /// </summary>
-    /// <param name="parameterOrdinal">The i of the parameter</param>
-    /// <returns>Error</returns>
-    protected override string GetParameterName(int parameterOrdinal)
-    {
-      return String.Format(CultureInfo.InvariantCulture, "@param{0}", parameterOrdinal);
-    }
-
-    /// <summary>
-    /// Returns a placeholder character for the specified parameter i.
-    /// </summary>
-    /// <param name="parameterOrdinal">The index of the parameter to provide a placeholder for</param>
-    /// <returns>Returns a named parameter</returns>
-    protected override string GetParameterPlaceholder(int parameterOrdinal)
-    {
-      return GetParameterName(parameterOrdinal);
-    }
-
-    /// <summary>
-    /// Sets the handler for receiving row updating events.  Used by the DbCommandBuilder to autogenerate SQL
-    /// statements that may not have previously been generated.
-    /// </summary>
-    /// <param name="adapter">A data adapter to receive events on.</param>
-    protected override void SetRowUpdatingHandler(DbDataAdapter adapter)
-    {
-      SqliteDataAdapter adp = (SqliteDataAdapter)adapter;
-
-      _handler = new EventHandler<RowUpdatingEventArgs>(RowUpdatingEventHandler);
-      adp.RowUpdating += _handler;
-    }
-
-    private void RowUpdatingEventHandler(object sender, RowUpdatingEventArgs e)
-    {
-      base.RowUpdatingHandler(e);
-    }
-
-    /// <summary>
-    /// Gets/sets the DataAdapter for this CommandBuilder
-    /// </summary>
-    public new SqliteDataAdapter DataAdapter
-    {
-      get { return (SqliteDataAdapter)base.DataAdapter; }
-      set { base.DataAdapter = value; }
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to delete rows from the database
-    /// </summary>
-    /// <returns></returns>
-    public new SqliteCommand GetDeleteCommand()
-    {
-      return (SqliteCommand)base.GetDeleteCommand();
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to delete rows from the database
-    /// </summary>
-    /// <param name="useColumnsForParameterNames"></param>
-    /// <returns></returns>
-    public new SqliteCommand GetDeleteCommand(bool useColumnsForParameterNames)
-    {
-      return (SqliteCommand)base.GetDeleteCommand(useColumnsForParameterNames);
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to update rows in the database
-    /// </summary>
-    /// <returns></returns>
-    public new SqliteCommand GetUpdateCommand()
-    {
-      return (SqliteCommand)base.GetUpdateCommand();
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to update rows in the database
-    /// </summary>
-    /// <param name="useColumnsForParameterNames"></param>
-    /// <returns></returns>
-    public new SqliteCommand GetUpdateCommand(bool useColumnsForParameterNames)
-    {
-      return (SqliteCommand)base.GetUpdateCommand(useColumnsForParameterNames);
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to insert rows into the database
-    /// </summary>
-    /// <returns></returns>
-    public new SqliteCommand GetInsertCommand()
-    {
-      return (SqliteCommand)base.GetInsertCommand();
-    }
-
-    /// <summary>
-    /// Returns the automatically-generated Sqlite command to insert rows into the database
-    /// </summary>
-    /// <param name="useColumnsForParameterNames"></param>
-    /// <returns></returns>
-    public new SqliteCommand GetInsertCommand(bool useColumnsForParameterNames)
-    {
-      return (SqliteCommand)base.GetInsertCommand(useColumnsForParameterNames);
-    }
-
-    /// <summary>
-    /// Overridden to hide its property from the designer
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false)]
-#endif
-    public override CatalogLocation CatalogLocation
-    {
-      get
-      {
-        return base.CatalogLocation;
-      }
-      set
-      {
-        base.CatalogLocation = value;
-      }
-    }
-
-    /// <summary>
-    /// Overridden to hide its property from the designer
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false)]
-#endif
-    public override string CatalogSeparator
-    {
-      get
-      {
-        return base.CatalogSeparator;
-      }
-      set
-      {
-        base.CatalogSeparator = value;
-      }
-    }
-
-    /// <summary>
-    /// Overridden to hide its property from the designer
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false)]
-#endif
-    [DefaultValue("[")]
-    public override string QuotePrefix
-    {
-      get
-      {
-        return base.QuotePrefix;
-      }
-      set
-      {
-        base.QuotePrefix = value;
-      }
-    }
-
-    /// <summary>
-    /// Overridden to hide its property from the designer
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false)]
-#endif
-    public override string QuoteSuffix
-    {
-      get
-      {
-        return base.QuoteSuffix;
-      }
-      set
-      {
-        base.QuoteSuffix = value;
-      }
-    }
-
-    /// <summary>
-    /// Places brackets around an identifier
-    /// </summary>
-    /// <param name="unquotedIdentifier">The identifier to quote</param>
-    /// <returns>The bracketed identifier</returns>
-    public override string QuoteIdentifier(string unquotedIdentifier)
-    {
-      if (String.IsNullOrEmpty(QuotePrefix)
-        || String.IsNullOrEmpty(QuoteSuffix)
-        || String.IsNullOrEmpty(unquotedIdentifier))
-        return unquotedIdentifier;
-
-      return QuotePrefix + unquotedIdentifier.Replace(QuoteSuffix, QuoteSuffix + QuoteSuffix) + QuoteSuffix;
-    }
-
-    /// <summary>
-    /// Removes brackets around an identifier
-    /// </summary>
-    /// <param name="quotedIdentifier">The quoted (bracketed) identifier</param>
-    /// <returns>The undecorated identifier</returns>
-    public override string UnquoteIdentifier(string quotedIdentifier)
-    {
-      if (String.IsNullOrEmpty(QuotePrefix)
-        || String.IsNullOrEmpty(QuoteSuffix)
-        || String.IsNullOrEmpty(quotedIdentifier))
-        return quotedIdentifier;
-
-      if (quotedIdentifier.StartsWith(QuotePrefix, StringComparison.InvariantCultureIgnoreCase) == false
-        || quotedIdentifier.EndsWith(QuoteSuffix, StringComparison.InvariantCultureIgnoreCase) == false)
-        return quotedIdentifier;
-
-      return quotedIdentifier.Substring(QuotePrefix.Length, quotedIdentifier.Length - (QuotePrefix.Length + QuoteSuffix.Length)).Replace(QuoteSuffix + QuoteSuffix, QuoteSuffix);
-    }
-
-    /// <summary>
-    /// Overridden to hide its property from the designer
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false)]
-#endif
-    public override string SchemaSeparator
-    {
-      get
-      {
-        return base.SchemaSeparator;
-      }
-      set
-      {
-        base.SchemaSeparator = value;
-      }
-    }
-
-    /// <summary>
-    /// Override helper, which can help the base command builder choose the right keys for the given query
-    /// </summary>
-    /// <param name="sourceCommand"></param>
-    /// <returns></returns>
-    protected override DataTable GetSchemaTable(DbCommand sourceCommand)
-    {
-      using (IDataReader reader = sourceCommand.ExecuteReader(CommandBehavior.KeyInfo | CommandBehavior.SchemaOnly))
-      {
-        DataTable schema = reader.GetSchemaTable();
-
-        // If the query contains a primary key, turn off the IsUnique property
-        // for all the non-key columns
-        if (HasSchemaPrimaryKey(schema))
-          ResetIsUniqueSchemaColumn(schema);
-
-        // if table has no primary key we use unique columns as a fall back
-        return schema;
-      }
-    }
-
-    private bool HasSchemaPrimaryKey(DataTable schema)
-    {
-      DataColumn IsKeyColumn = schema.Columns[SchemaTableColumn.IsKey];
-
-      foreach (DataRow schemaRow in schema.Rows)
-      {
-        if ((bool)schemaRow[IsKeyColumn] == true)
-          return true;
-      }
-
-      return false;
-    }
-
-    private void ResetIsUniqueSchemaColumn(DataTable schema)
-    {
-      DataColumn IsUniqueColumn = schema.Columns[SchemaTableColumn.IsUnique];
-      DataColumn IsKeyColumn = schema.Columns[SchemaTableColumn.IsKey];
-
-      foreach (DataRow schemaRow in schema.Rows)
-      {
-        if ((bool)schemaRow[IsKeyColumn] == false)
-          schemaRow[IsUniqueColumn] = false;
-      }
-
-      schema.AcceptChanges();
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnection.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnection.cs
deleted file mode 100644
index 968501d..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnection.cs
+++ /dev/null
@@ -1,2078 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteConnection.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Collections.Generic;
-  using System.Globalization;
-  using System.ComponentModel;
-	
-  /// <summary>
-  /// Sqlite implentation of DbConnection.
-  /// </summary>
-  /// <remarks>
-  /// The <see cref="ConnectionString">ConnectionString</see> property of the SqliteConnection class can contain the following parameter(s), delimited with a semi-colon:
-  /// <list type="table">
-  /// <listheader>
-  /// <term>Parameter</term>
-  /// <term>Values</term>
-  /// <term>Required</term>
-  /// <term>Default</term>
-  /// </listheader>
-  /// <item>
-  /// <description>Data Source</description>
-  /// <description>{filename}</description>
-  /// <description>Y</description>
-  /// <description></description>
-  /// </item>
-  /// <item>
-  /// <description>Version</description>
-  /// <description>3</description>
-  /// <description>N</description>
-  /// <description>3</description>
-  /// </item>
-  /// <item>
-  /// <description>UseUTF16Encoding</description>
-  /// <description><b>True</b><br/><b>False</b></description>
-  /// <description>N</description>
-  /// <description>False</description>
-  /// </item>
-  /// <item>
-  /// <description>DateTimeFormat</description>
-  /// <description><b>Ticks</b> - Use DateTime.Ticks<br/><b>ISO8601</b> - Use ISO8601 DateTime format</description>
-  /// <description>N</description>
-  /// <description>ISO8601</description>
-  /// </item>
-  /// <item>
-  /// <description>BinaryGUID</description>
-  /// <description><b>True</b> - Store GUID columns in binary form<br/><b>False</b> - Store GUID columns as text</description>
-  /// <description>N</description>
-  /// <description>True</description>
-  /// </item>
-  /// <item>
-  /// <description>Cache Size</description>
-  /// <description>{size in bytes}</description>
-  /// <description>N</description>
-  /// <description>2000</description>
-  /// </item>
-  /// <item>
-  /// <description>Synchronous</description>
-  /// <description><b>Normal</b> - Normal file flushing behavior<br/><b>Full</b> - Full flushing after all writes<br/><b>Off</b> - Underlying OS flushes I/O's</description>
-  /// <description>N</description>
-  /// <description>Normal</description>
-  /// </item>
-  /// <item>
-  /// <description>Page Size</description>
-  /// <description>{size in bytes}</description>
-  /// <description>N</description>
-  /// <description>1024</description>
-  /// </item>
-  /// <item>
-  /// <description>Password</description>
-  /// <description>{password}</description>
-  /// <description>N</description>
-  /// <description></description>
-  /// </item>
-  /// <item>
-  /// <description>Enlist</description>
-  /// <description><B>Y</B> - Automatically enlist in distributed transactions<br/><b>N</b> - No automatic enlistment</description>
-  /// <description>N</description>
-  /// <description>Y</description>
-  /// </item>
-  /// </list>
-  /// </remarks>
-  public sealed class SqliteConnection : DbConnection, ICloneable
-  {
-    private const string _dataDirectory = "|DataDirectory|";
-
-    /// <summary>
-    /// State of the current connection
-    /// </summary>
-    private ConnectionState      _connectionState;
-    /// <summary>
-    /// The connection string
-    /// </summary>
-    private string               _connectionString;
-    /// <summary>
-    /// Nesting level of the transactions open on the connection
-    /// </summary>
-    internal int                 _transactionLevel;
-    /// <summary>
-    /// Busy command timeout value. Defaults to 30
-    /// </summary>
-    internal int                 _busyTimeout;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-    /// <summary>
-    /// Whether or not the connection is enlisted in a distrubuted transaction
-    /// </summary>
-    internal SqliteEnlistment    _enlistment;
-#endif
-    /// <summary>
-    /// The base Sqlite object to interop with
-    /// </summary>
-    internal SqliteBase          _sql;
-    /// <summary>
-    /// Commands associated with this connection
-    /// </summary>
-    internal List<SqliteCommand> _commandList;
-    /// <summary>
-    /// The database filename minus path and extension
-    /// </summary>
-    private string               _dataSource;
-#if MONO_SUPPORT_PASSWORDS
-    /// <summary>
-    /// Temporary password storage, emptied after the database has been opened
-    /// </summary>
-    private byte[]               _password;
-#endif
-
-    internal bool                _binaryGuid;
-
-    internal long                _version;
-
-    private event SqliteUpdateEventHandler _updateHandler;
-    private event SqliteCommitHandler      _commitHandler;
-    private event EventHandler             _rollbackHandler;
-
-    private SqliteUpdateCallback   _updateCallback;
-    private SqliteCommitCallback   _commitCallback;
-    private SqliteRollbackCallback _rollbackCallback;
-
-    /// <summary>
-    /// This event is raised whenever the database is opened or closed.
-    /// </summary>
-    //public override event StateChangeEventHandler StateChange;
-
-    /// <summary>
-    /// This event is raised whenever Sqlite makes an update/delete/insert into the database on
-    /// this connection.  It only applies to the given connection.
-    /// </summary>
-    public event SqliteUpdateEventHandler Update
-    {
-      add
-      {
-        if (_updateHandler == null)
-        {
-          _updateCallback = new SqliteUpdateCallback(UpdateCallback);
-          _sql.SetUpdateHook(_updateCallback);
-        }
-        _updateHandler += value;
-      }
-      remove
-      {
-        _updateHandler -= value;
-        if (_updateHandler == null)
-        {
-          _sql.SetUpdateHook(null);
-          _updateCallback = null;
-        }
-      }
-    }
-
-    private void UpdateCallback(int type, IntPtr database, int databaseLen, IntPtr table, int tableLen, Int64 rowid)
-    {
-      _updateHandler(this, new UpdateEventArgs(
-        _sql.UTF8ToString(database),
-        _sql.UTF8ToString(table),
-        (UpdateEventType)type,
-        rowid));
-    }
-
-    /// <summary>
-    /// This event is raised whenever Sqlite is committing a transaction.
-    /// Return non-zero to trigger a rollback
-    /// </summary>
-    public event SqliteCommitHandler Commit
-    {
-      add
-      {
-        if (_commitHandler == null)
-        {
-          _commitCallback = new SqliteCommitCallback(CommitCallback);
-          _sql.SetCommitHook(_commitCallback);
-        }
-        _commitHandler += value;
-      }
-      remove
-      {
-        _commitHandler -= value;
-        if (_commitHandler == null)
-        {
-          _sql.SetCommitHook(null);
-          _commitCallback = null;
-        }
-      }
-    }
-
-    /// <summary>
-    /// This event is raised whenever Sqlite is committing a transaction.
-    /// Return non-zero to trigger a rollback
-    /// </summary>
-    public event EventHandler RollBack
-    {
-      add
-      {
-        if (_rollbackHandler == null)
-        {
-          _rollbackCallback = new SqliteRollbackCallback(RollbackCallback);
-          _sql.SetRollbackHook(_rollbackCallback);
-        }
-        _rollbackHandler += value;
-      }
-      remove
-      {
-        _rollbackHandler -= value;
-        if (_rollbackHandler == null)
-        {
-          _sql.SetRollbackHook(null);
-          _rollbackCallback = null;
-        }
-      }
-    }
-
-
-    private int CommitCallback()
-    {
-      CommitEventArgs e = new CommitEventArgs();
-      _commitHandler(this, e);
-      return (e.AbortTransaction == true) ? 1 : 0;
-    }
-
-    private void RollbackCallback()
-    {
-      _rollbackHandler(this, EventArgs.Empty);
-    }
-
-    ///<overloads>
-    /// Constructs a new SqliteConnection object
-    /// </overloads>
-    /// <summary>
-    /// Default constructor
-    /// </summary>
-    public SqliteConnection() : this("")
-    {
-    }
-
-    /// <summary>
-    /// Initializes the connection with the specified connection string
-    /// </summary>
-    /// <param name="connectionString">The connection string to use on the connection</param>
-    public SqliteConnection(string connectionString)
-    {
-      _sql = null;
-      _connectionState = ConnectionState.Closed;
-      _connectionString = "";
-      _transactionLevel = 0;
-      _busyTimeout = 30;
-      _version = 0;
-      _commandList = new List<SqliteCommand>();
-
-      if (connectionString != null)
-        ConnectionString = connectionString;
-    }
-
-    /// <summary>
-    /// Clones the settings and connection string from an existing connection.  If the existing connection is already open, this
-    /// function will open its own connection, enumerate any attached databases of the original connection, and automatically
-    /// attach to them.
-    /// </summary>
-    /// <param name="connection"></param>
-    public SqliteConnection(SqliteConnection connection) : this(connection.ConnectionString)
-    {
-      string str;
-
-      if (connection.State == ConnectionState.Open)
-      {
-        Open();
-
-        // Reattach all attached databases from the existing connection
-        using (DataTable tbl = connection.GetSchema("Catalogs"))
-        {
-          foreach (DataRow row in tbl.Rows)
-          {
-            str = row[0].ToString();
-            if (String.Compare(str, "main", true, CultureInfo.InvariantCulture) != 0
-              && String.Compare(str, "temp", true, CultureInfo.InvariantCulture) != 0)
-            {
-              using (SqliteCommand cmd = CreateCommand())
-              {
-                cmd.CommandText = String.Format(CultureInfo.InvariantCulture, "ATTACH DATABASE '{0}' AS [{1}]", row[1], row[0]);
-                cmd.ExecuteNonQuery();
-              }
-            }
-          }
-        }
-      }
-    }
-
-    /// <summary>
-    /// Creates a clone of the connection.  All attached databases and user-defined functions are cloned.  If the existing connection is open, the cloned connection
-    /// will also be opened.
-    /// </summary>
-    /// <returns></returns>
-    public object Clone()
-    {
-      return new SqliteConnection(this);
-    }
-
-    /// <summary>
-    /// Disposes of the SqliteConnection, closing it if it is active.
-    /// </summary>
-    /// <param name="disposing">True if the connection is being explicitly closed.</param>
-    protected override void Dispose(bool disposing)
-    {
-      base.Dispose(disposing);
-      Close();
-    }
-
-    /// <summary>
-    /// Creates a database file.  This just creates a zero-byte file which Sqlite
-    /// will turn into a database when the file is opened properly.
-    /// </summary>
-    /// <param name="databaseFileName">The file to create</param>
-    static public void CreateFile(string databaseFileName)
-    {
-      System.IO.FileStream fs = System.IO.File.Create(databaseFileName);
-      fs.Close();
-    }
-
-    /// <summary>
-    /// On NTFS volumes, this function turns on the compression attribute for the given file.
-    /// It must not be open or referenced at the time of the function call.
-    /// </summary>
-    /// <param name="databaseFileName">The file to compress</param>
-    static public void CompressFile(string databaseFileName)
-    {
-      UnsafeNativeMethods.sqlite3_compressfile(databaseFileName);
-    }
-
-    /// <summary>
-    /// On NTFS volumes, this function removes the compression attribute for the given file.
-    /// It must not be open or referenced at the time of the function call.
-    /// </summary>
-    /// <param name="databaseFileName">The file to decompress</param>
-    static public void DecompressFile(string databaseFileName)
-    {
-      UnsafeNativeMethods.sqlite3_decompressfile(databaseFileName);
-    }
-
-    /// <summary>
-    /// Raises the state change event when the state of the connection changes
-    /// </summary>
-    /// <param name="newState">The new state.  If it is different from the previous state, an event is raised.</param>
-    internal void OnStateChange(ConnectionState newState)
-    {
-      // FIXME: breaks when the commented out code is used
-      ConnectionState oldState = _connectionState;
-      _connectionState = newState;
-
-//      if (StateChange != null && oldState != newState)
-      if (oldState != newState)
-      {
-        StateChangeEventArgs e = new StateChangeEventArgs(oldState, newState);
-        //StateChange(this, e);
-	base.OnStateChange (e);
-      }
-    }
-
-    /// <summary>
-    /// Creates a new SqliteTransaction if one isn't already active on the connection.
-    /// </summary>
-    /// <param name="isolationLevel">Sqlite doesn't support varying isolation levels, so this parameter is ignored.</param>
-    /// <param name="deferredLock">When TRUE, Sqlite defers obtaining a write lock until a write operation is requested.
-    /// When FALSE, a writelock is obtained immediately.  The default is TRUE, but in a multi-threaded multi-writer
-    /// environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock.</param>
-    /// <returns>Returns a SqliteTransaction object.</returns>
-    public SqliteTransaction BeginTransaction(System.Data.IsolationLevel isolationLevel, bool deferredLock)
-    {
-      return BeginTransaction(deferredLock);
-    }
-
-    /// <summary>
-    /// Creates a new SqliteTransaction if one isn't already active on the connection.
-    /// </summary>
-    /// <param name="deferredLock">When TRUE, Sqlite defers obtaining a write lock until a write operation is requested.
-    /// When FALSE, a writelock is obtained immediately.  The default is TRUE, but in a multi-threaded multi-writer
-    /// environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock.</param>
-    /// <returns>Returns a SqliteTransaction object.</returns>
-    public SqliteTransaction BeginTransaction(bool deferredLock)
-    {
-      if (_connectionState != ConnectionState.Open)
-        throw new InvalidOperationException();
-
-      return new SqliteTransaction(this, deferredLock);
-    }
-
-    /// <summary>
-    /// Creates a new SqliteTransaction if one isn't already active on the connection.
-    /// </summary>
-    /// <param name="isolationLevel">Sqlite supports only serializable transactions.</param>
-    /// <returns>Returns a SqliteTransaction object.</returns>
-    public new SqliteTransaction BeginTransaction(System.Data.IsolationLevel isolationLevel)
-    {
-      return BeginTransaction(false);
-    }
-
-    /// <summary>
-    /// Creates a new SqliteTransaction if one isn't already active on the connection.
-    /// </summary>
-    /// <returns>Returns a SqliteTransaction object.</returns>
-    public new SqliteTransaction BeginTransaction()
-    {
-      return BeginTransaction(false);
-    }
-
-    /// <summary>
-    /// Forwards to the local BeginTransaction() function
-    /// </summary>
-    /// <param name="isolationLevel"></param>
-    /// <returns></returns>
-    protected override DbTransaction BeginDbTransaction(System.Data.IsolationLevel isolationLevel)
-    {
-      return BeginTransaction(false);
-    }
-
-    /// <summary>
-    /// Not implemented
-    /// </summary>
-    /// <param name="databaseName"></param>
-    public override void ChangeDatabase(string databaseName)
-    {
-      throw new NotImplementedException();
-    }
-
-    /// <summary>
-    /// When the database connection is closed, all commands linked to this connection are automatically reset.
-    /// </summary>
-    public override void Close()
-    {
-      if (_sql != null)
-      {
-        // Force any commands associated with this connection to release their unmanaged
-        // resources.  The commands are still valid and will automatically re-acquire the
-        // unmanaged resources the next time they are run -- provided this connection is
-        // re-opened before then.
-        lock (_commandList)
-        {
-          foreach (SqliteCommand cmd in _commandList)
-            cmd.ClearCommands();
-        }
-
-#if !PLATFORM_COMPACTFRAMEWORK
-        if (_enlistment != null)
-        {
-          // If the connection is enlisted in a transaction scope and the scope is still active,
-          // we cannot truly shut down this connection until the scope has completed.  Therefore make a
-          // hidden connection temporarily to hold open the connection until the scope has completed.
-          SqliteConnection cnn = new SqliteConnection();
-          cnn._sql = _sql;
-          cnn._transactionLevel = _transactionLevel;
-          cnn._enlistment = _enlistment;
-          cnn._connectionState = _connectionState;
-          cnn._version = _version;
-
-          cnn._enlistment._transaction._cnn = cnn;
-          cnn._enlistment._disposeConnection = true;
-        }
-        else
-        {
-          _sql.Close();
-        }
-        _enlistment = null;
-#else
-        _sql.Close();
-#endif
-        _sql = null;
-        _transactionLevel = 0;
-      }
-
-      OnStateChange(ConnectionState.Closed);
-    }
-
-    /// <summary>
-    /// The connection string containing the parameters for the connection
-    /// </summary>
-    /// <remarks>
-    /// <list type="table">
-    /// <listheader>
-    /// <term>Parameter</term>
-    /// <term>Values</term>
-    /// <term>Required</term>
-    /// <term>Default</term>
-    /// </listheader>
-    /// <item>
-    /// <description>Data Source</description>
-    /// <description>{filename}</description>
-    /// <description>Y</description>
-    /// <description></description>
-    /// </item>
-    /// <item>
-    /// <description>Version</description>
-    /// <description>3</description>
-    /// <description>N</description>
-    /// <description>3</description>
-    /// </item>
-    /// <item>
-    /// <description>UseUTF16Encoding</description>
-    /// <description><b>True</b><br/><b>False</b></description>
-    /// <description>N</description>
-    /// <description>False</description>
-    /// </item>
-    /// <item>
-    /// <description>DateTimeFormat</description>
-    /// <description><b>Ticks</b> - Use DateTime.Ticks<br/><b>ISO8601</b> - Use ISO8601 DateTime format</description>
-    /// <description>N</description>
-    /// <description>ISO8601</description>
-    /// </item>
-    /// <item>
-    /// <description>BinaryGUID</description>
-    /// <description><b>Yes/On/1</b> - Store GUID columns in binary form<br/><b>No/Off/0</b> - Store GUID columns as text</description>
-    /// <description>N</description>
-    /// <description>On</description>
-    /// </item>
-    /// <item>
-    /// <description>Cache Size</description>
-    /// <description>{size in bytes}</description>
-    /// <description>N</description>
-    /// <description>2000</description>
-    /// </item>
-    /// <item>
-    /// <description>Synchronous</description>
-    /// <description><b>Normal</b> - Normal file flushing behavior<br/><b>Full</b> - Full flushing after all writes<br/><b>Off</b> - Underlying OS flushes I/O's</description>
-    /// <description>N</description>
-    /// <description>Normal</description>
-    /// </item>
-    /// <item>
-    /// <description>Page Size</description>
-    /// <description>{size in bytes}</description>
-    /// <description>N</description>
-    /// <description>1024</description>
-    /// </item>
-    /// <item>
-    /// <description>Password</description>
-    /// <description>{password}</description>
-    /// <description>N</description>
-    /// <description></description>
-    /// </item>
-    /// <item>
-    /// <description>Enlist</description>
-    /// <description><B>Y</B> - Automatically enlist in distributed transactions<br/><b>N</b> - No automatic enlistment</description>
-    /// <description>N</description>
-    /// <description>Y</description>
-    /// </item>
-    /// </list>
-    /// </remarks>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [RefreshProperties(RefreshProperties.All), DefaultValue("")]
-    [Editor("Sqlite.Designer.SqliteConnectionStringEditor, Sqlite.Designer, Version=1.0.31.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public override string ConnectionString
-    {
-      get
-      {
-        return _connectionString;
-      }
-      set
-      {
-        if (value == null)
-          throw new ArgumentNullException();
-
-        else if (_connectionState != ConnectionState.Closed)
-          throw new InvalidOperationException();
-
-        _connectionString = value;
-      }
-    }
-
-    /// <summary>
-    /// Create a new SqliteCommand and associate it with this connection.
-    /// </summary>
-    /// <returns>Returns an instantiated SqliteCommand object already assigned to this connection.</returns>
-    public new SqliteCommand CreateCommand()
-    {
-      return new SqliteCommand(this);
-    }
-
-    /// <summary>
-    /// Forwards to the local CreateCommand() function
-    /// </summary>
-    /// <returns></returns>
-    protected override DbCommand CreateDbCommand()
-    {
-      return CreateCommand();
-    }
-
-    /// <summary>
-    /// Returns the filename without extension or path
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
-#endif
-    public override string DataSource
-    {
-      get
-      {
-        return _dataSource;
-      }
-    }
-
-    /// <summary>
-    /// Returns "main'
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
-#endif
-    public override string Database
-    {
-      get
-      {
-        return "main";
-      }
-    }
-
-    /// <summary>
-    /// Maps mono-specific connection string keywords to the standard ones
-    /// </summary>
-    /// <returns>The mapped keyword name</returns>
-    internal void MapMonoKeyword (string[] arPiece, List<KeyValuePair<string, string>> ls)
-    {
-	    string keyword, value;
-	
-	    switch (arPiece[0].ToLower (CultureInfo.InvariantCulture)) {
-		    case "uri":
-			    keyword = "Data Source";
-			    value = MapMonoUriPath (arPiece[1]);
-			    break;
-			
-		    default:
-			    keyword = arPiece[0];
-			    value = arPiece[1];
-			    break;
-	    }
-
-	    ls.Add(new KeyValuePair<string, string>(keyword, value));
-    }
-
-    internal string MapMonoUriPath (string path)
-    {
-	    if (path.StartsWith ("file://")) {
-		    return path.Substring (7);
-	    } else if (path.StartsWith ("file:")) {
-		    return path.Substring (5);
-	    } else if (path.StartsWith ("/")) {
-		    return path;
-	    } else {
-		    throw new InvalidOperationException ("Invalid connection string: invalid URI");
-	    }
-    }
-
-    /// <summary>
-    /// Parses the connection string into component parts
-    /// </summary>
-    /// <returns>An array of key-value pairs representing each parameter of the connection string</returns>
-    internal KeyValuePair<string, string>[] ParseConnectionString()
-    {
-      string s = _connectionString.Replace (',', ';'); // Mono compatibility
-      int n;
-      List<KeyValuePair<string, string>> ls = new List<KeyValuePair<string, string>>();
-
-      // First split into semi-colon delimited values.  The Split() function of SqliteBase accounts for and properly
-      // skips semi-colons in quoted strings
-      string[] arParts = SqliteConvert.Split(s, ';');
-      string[] arPiece;
-
-      int x = arParts.Length;
-      // For each semi-colon piece, split into key and value pairs by the presence of the = sign
-      for (n = 0; n < x; n++)
-      {
-        arPiece = SqliteConvert.Split(arParts[n], '=');
-        if (arPiece.Length == 2)
-	  MapMonoKeyword (arPiece, ls);
-        else throw new ArgumentException(String.Format(CultureInfo.CurrentCulture, "Invalid ConnectionString format for parameter \"{0}\"", (arPiece.Length > 0) ? arPiece[0] : "null"));
-      }
-      KeyValuePair<string, string>[] ar = new KeyValuePair<string, string>[ls.Count];
-      ls.CopyTo(ar, 0);
-
-      // Return the array of key-value pairs
-      return ar;
-    }
-
-#if !PLATFORM_COMPACTFRAMEWORK
-    /// <summary>
-    /// Manual distributed transaction enlistment support
-    /// </summary>
-    /// <param name="transaction">The distributed transaction to enlist in</param>
-    public override void EnlistTransaction(System.Transactions.Transaction transaction)
-    {
-      if (_transactionLevel > 0 && transaction != null)
-        throw new ArgumentException("Unable to enlist in transaction, a local transaction already exists");
-
-      if (_enlistment != null && transaction != _enlistment._scope)
-        throw new ArgumentException("Already enlisted in a transaction");
-
-      _enlistment = new SqliteEnlistment(this, transaction);
-    }
-#endif
-
-    /// <summary>
-    /// Looks for a key in the array of key/values of the parameter string.  If not found, return the specified default value
-    /// </summary>
-    /// <param name="opts">The Key/Value pair array to look in</param>
-    /// <param name="key">The key to find</param>
-    /// <param name="defValue">The default value to return if the key is not found</param>
-    /// <returns>The value corresponding to the specified key, or the default value if not found.</returns>
-    static internal string FindKey(KeyValuePair<string, string>[] opts, string key, string defValue)
-    {
-      int x = opts.Length;
-      for (int n = 0; n < x; n++)
-      {
-        if (String.Compare(opts[n].Key, key, true, CultureInfo.InvariantCulture) == 0)
-        {
-          return opts[n].Value;
-        }
-      }
-      return defValue;
-    }
-
-    /// <summary>
-    /// Opens the connection using the parameters found in the <see cref="ConnectionString">ConnectionString</see>
-    /// </summary>
-    public override void Open()
-    {
-      if (_connectionState != ConnectionState.Closed)
-        throw new InvalidOperationException();
-
-      Close();
-
-      KeyValuePair<string, string>[] opts = ParseConnectionString();
-      string fileName;
-
-      if (Convert.ToInt32(FindKey(opts, "Version", "3"), CultureInfo.InvariantCulture) != 3)
-        throw new NotSupportedException("Only Sqlite Version 3 is supported at this time");
-
-      fileName = FindKey(opts, "Data Source", "");
-
-      if (String.IsNullOrEmpty(fileName))
-        throw new ArgumentException("Data Source cannot be empty.  Use :memory: to open an in-memory database");
-
-      if (String.Compare(fileName, ":MEMORY:", true, CultureInfo.InvariantCulture) == 0)
-        fileName = ":memory:";
-#if PLATFORM_COMPACTFRAMEWORK
-      else if (fileName.StartsWith(".\\"))
-        fileName = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetCallingAssembly().GetName().CodeBase) + fileName.Substring(1);
-#endif
-      string bt = FindKey (opts, "busy_timeout", "30");
-      try {
-	      _busyTimeout = Int32.Parse (bt);
-      } catch (Exception) {
-	      // ignore
-      }
-
-      try
-      {
-        bool bUTF16 = (Convert.ToBoolean(FindKey(opts, "UseUTF16Encoding", "False"), CultureInfo.InvariantCulture) == true);
-        SqliteDateFormats dateFormat = String.Compare(FindKey(opts, "DateTimeFormat", "ISO8601"), "ticks", true, CultureInfo.InvariantCulture) == 0 ? SqliteDateFormats.Ticks : SqliteDateFormats.ISO8601;
-
-        if (bUTF16) // Sqlite automatically sets the encoding of the database to UTF16 if called from sqlite3_open16()
-          _sql = new Sqlite3_UTF16(dateFormat);
-        else
-          _sql = new Sqlite3(dateFormat);
-
-        fileName = ExpandFileName(fileName);
-
-        try
-        {
-          if (System.IO.File.Exists(fileName) == false)
-            throw new System.IO.FileNotFoundException(String.Format(CultureInfo.CurrentCulture, "Unable to locate file \"{0}\", creating new database.", fileName));
-        }
-        catch
-        {
-        }
-
-        _sql.Open(fileName);
-
-        _binaryGuid = (Convert.ToBoolean(FindKey(opts, "BinaryGUID", "True"), CultureInfo.InvariantCulture) == true);
-
-#if MONO_SUPPORT_PASSWORDS
-	// Not used under mono now
-        string password = FindKey(opts, "Password", null);
-
-        if (String.IsNullOrEmpty(password) == false)
-          _sql.SetPassword(System.Text.UTF8Encoding.UTF8.GetBytes(password));
-        else if (_password != null)
-          _sql.SetPassword(_password);
-        _password = null;
-#endif
-        _dataSource = System.IO.Path.GetFileNameWithoutExtension(fileName);
-
-        OnStateChange(ConnectionState.Open);
-        _version++;
-
-        using (SqliteCommand cmd = CreateCommand())
-        {
-          string defValue;
-
-          defValue = FindKey(opts, "Synchronous", "Normal");
-          if (String.Compare(defValue, "Normal", true, CultureInfo.InvariantCulture) != 0)
-          {
-            cmd.CommandText = String.Format(CultureInfo.InvariantCulture, "PRAGMA Synchronous={0}", defValue);
-            cmd.ExecuteNonQuery();
-          }
-
-          defValue = FindKey(opts, "Cache Size", "2000");
-          if (Convert.ToInt32(defValue) != 2000)
-          {
-            cmd.CommandText = String.Format(CultureInfo.InvariantCulture, "PRAGMA Cache_Size={0}", defValue);
-            cmd.ExecuteNonQuery();
-          }
-
-          if (fileName != ":memory:")
-          {
-            defValue = FindKey(opts, "Page Size", "1024");
-            if (Convert.ToInt32(defValue) != 1024)
-            {
-              cmd.CommandText = String.Format(CultureInfo.InvariantCulture, "PRAGMA Page_Size={0}", defValue);
-              cmd.ExecuteNonQuery();
-            }
-          }
-        }
-
-#if !PLATFORM_COMPACTFRAMEWORK
-        if (FindKey(opts, "Enlist", "Y").ToUpper()[0] == 'Y' && System.Transactions.Transaction.Current != null)
-          EnlistTransaction(System.Transactions.Transaction.Current);
-#endif
-      }
-      catch (SqliteException)
-      {
-        OnStateChange(ConnectionState.Broken);
-        throw;
-      }
-    }
-
-    /// <summary>
-    /// Returns the version of the underlying Sqlite database engine
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
-#endif
-    public override string ServerVersion
-    {
-      get
-      {
-        if (_connectionState != ConnectionState.Open)
-          throw new InvalidOperationException();
-
-        return _sql.Version;
-      }
-    }
-
-    /// <summary>
-    /// Returns the state of the connection.
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
-#endif
-    public override ConnectionState State
-    {
-      get
-      {
-        return _connectionState;
-      }
-    }
-
-#if MONO_SUPPORT_PASSWORDS // Not used on mono now
-    /// <summary>
-    /// Change the password (or assign a password) to an open database.
-    /// </summary>
-    /// <remarks>
-    /// No readers or writers may be active for this process.  The database must already be open
-    /// and if it already was password protected, the existing password must already have been supplied.
-    /// </remarks>
-    /// <param name="newPassword">The new password to assign to the database</param>
-    public void ChangePassword(string newPassword)
-    {
-      ChangePassword(String.IsNullOrEmpty(newPassword) ? null : System.Text.UTF8Encoding.UTF8.GetBytes(newPassword));
-    }
-
-    /// <summary>
-    /// Change the password (or assign a password) to an open database.
-    /// </summary>
-    /// <remarks>
-    /// No readers or writers may be active for this process.  The database must already be open
-    /// and if it already was password protected, the existing password must already have been supplied.
-    /// </remarks>
-    /// <param name="newPassword">The new password to assign to the database</param>
-    public void ChangePassword(byte[] newPassword)
-    {
-      if (_connectionState != ConnectionState.Open)
-        throw new InvalidOperationException("Database must be opened before changing the password.");
-
-      _sql.ChangePassword(newPassword);
-    }
-
-    /// <summary>
-    /// Sets the password for a password-protected database.  A password-protected database is
-    /// unusable for any operation until the password has been set.
-    /// </summary>
-    /// <param name="databasePassword">The password for the database</param>
-    public void SetPassword(string databasePassword)
-    {
-      SetPassword(String.IsNullOrEmpty(databasePassword) ? null : System.Text.UTF8Encoding.UTF8.GetBytes(databasePassword));
-    }
-
-    /// <summary>
-    /// Sets the password for a password-protected database.  A password-protected database is
-    /// unusable for any operation until the password has been set.
-    /// </summary>
-    /// <param name="databasePassword">The password for the database</param>
-    public void SetPassword(byte[] databasePassword)
-    {
-      if (_connectionState != ConnectionState.Closed)
-        throw new InvalidOperationException("Password can only be set before the database is opened.");
-
-      if (databasePassword != null)
-        if (databasePassword.Length == 0) databasePassword = null;
-
-      _password = databasePassword;
-    }
-#endif
-
-    /// <summary>
-    /// Expand the filename of the data source, resolving the |DataDirectory| macro as appropriate.
-    /// </summary>
-    /// <param name="sourceFile">The database filename to expand</param>
-    /// <returns>The expanded path and filename of the filename</returns>
-    private string ExpandFileName(string sourceFile)
-    {
-      if (String.IsNullOrEmpty(sourceFile)) return sourceFile;
-
-      if (sourceFile.StartsWith(_dataDirectory, StringComparison.OrdinalIgnoreCase))
-      {
-        string dataDirectory;
-
-#if PLATFORM_COMPACTFRAMEWORK
-        dataDirectory = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetCallingAssembly().GetName().CodeBase);
-#else
-        dataDirectory = AppDomain.CurrentDomain.GetData("DataDirectory") as string;
-        if (String.IsNullOrEmpty(dataDirectory))
-          dataDirectory = AppDomain.CurrentDomain.BaseDirectory;
-#endif
-
-        if (sourceFile.Length > _dataDirectory.Length)
-        {
-          if (sourceFile[_dataDirectory.Length] == System.IO.Path.DirectorySeparatorChar ||
-              sourceFile[_dataDirectory.Length] == System.IO.Path.AltDirectorySeparatorChar)
-            sourceFile = sourceFile.Remove(_dataDirectory.Length, 1);
-        }
-        sourceFile = System.IO.Path.Combine(dataDirectory, sourceFile.Substring(_dataDirectory.Length));
-      }
-
-      return sourceFile;
-    }
-    ///<overloads>
-    /// The following commands are used to extract schema information out of the database.  Valid schema types are:
-    /// <list type="bullet">
-    /// <item>
-    /// <description>MetaDataCollections</description>
-    /// </item>
-    /// <item>
-    /// <description>DataSourceInformation</description>
-    /// </item>
-    /// <item>
-    /// <description>Catalogs</description>
-    /// </item>
-    /// <item>
-    /// <description>Columns</description>
-    /// </item>
-    /// <item>
-    /// <description>ForeignKeys</description>
-    /// </item>
-    /// <item>
-    /// <description>Indexes</description>
-    /// </item>
-    /// <item>
-    /// <description>IndexColumns</description>
-    /// </item>
-    /// <item>
-    /// <description>Tables</description>
-    /// </item>
-    /// <item>
-    /// <description>Views</description>
-    /// </item>
-    /// <item>
-    /// <description>ViewColumns</description>
-    /// </item>
-    /// </list>
-    /// </overloads>
-    /// <summary>
-    /// Returns the MetaDataCollections schema
-    /// </summary>
-    /// <returns>A DataTable of the MetaDataCollections schema</returns>
-    public override DataTable GetSchema()
-    {
-      return GetSchema("MetaDataCollections", null);
-    }
-
-    /// <summary>
-    /// Returns schema information of the specified collection
-    /// </summary>
-    /// <param name="collectionName">The schema collection to retrieve</param>
-    /// <returns>A DataTable of the specified collection</returns>
-    public override DataTable GetSchema(string collectionName)
-    {
-      return GetSchema(collectionName, new string[0]);
-    }
-
-    /// <summary>
-    /// Retrieves schema information using the specified constraint(s) for the specified collection
-    /// </summary>
-    /// <param name="collectionName">The collection to retrieve</param>
-    /// <param name="restrictionValues">The restrictions to impose</param>
-    /// <returns>A DataTable of the specified collection</returns>
-    public override DataTable GetSchema(string collectionName, string[] restrictionValues)
-    {
-      if (_connectionState != ConnectionState.Open)
-        throw new InvalidOperationException();
-
-      string[] parms = new string[5];
-
-      if (restrictionValues == null) restrictionValues = new string[0];
-      restrictionValues.CopyTo(parms, 0);
-
-      switch (collectionName.ToUpper(CultureInfo.InvariantCulture))
-      {
-        case "METADATACOLLECTIONS":
-          return Schema_MetaDataCollections();
-        case "DATASOURCEINFORMATION":
-          return Schema_DataSourceInformation();
-        case "DATATYPES":
-          return Schema_DataTypes();
-        case "COLUMNS":
-          return Schema_Columns(parms[0], parms[2], parms[3]);
-        case "INDEXES":
-          return Schema_Indexes(parms[0], parms[2], parms[4]);
-        case "INDEXCOLUMNS":
-          return Schema_IndexColumns(parms[0], parms[2], parms[3], parms[4]);
-        case "TABLES":
-          return Schema_Tables(parms[0], parms[2], parms[3]);
-        case "VIEWS":
-          return Schema_Views(parms[0], parms[2]);
-        case "VIEWCOLUMNS":
-          return Schema_ViewColumns(parms[0], parms[2], parms[3]);
-        case "FOREIGNKEYS":
-          return Schema_ForeignKeys(parms[0], parms[2], parms[3]);
-        case "CATALOGS":
-          return Schema_Catalogs(parms[0]);
-        case "RESERVEDWORDS":
-          return Schema_ReservedWords();
-      }
-      throw new NotSupportedException();
-    }
-
-    private static DataTable Schema_ReservedWords()
-    {
-      DataTable tbl = new DataTable("MetaDataCollections");
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("ReservedWord", typeof(string));
-      tbl.Columns.Add("MaximumVersion", typeof(string));
-      tbl.Columns.Add("MinimumVersion", typeof(string));
-
-      tbl.BeginLoadData();
-      DataRow row;
-      foreach (string word in SR.Keywords.Split(new char[] { ',' }))
-      {
-        row = tbl.NewRow();
-        row[0] = word;
-        tbl.Rows.Add(row);
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Builds a MetaDataCollections schema datatable
-    /// </summary>
-    /// <returns>DataTable</returns>
-    private static DataTable Schema_MetaDataCollections()
-    {
-      DataTable tbl = new DataTable("MetaDataCollections");
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("CollectionName", typeof(string));
-      tbl.Columns.Add("NumberOfRestrictions", typeof(int));
-      tbl.Columns.Add("NumberOfIdentifierParts", typeof(int));
-
-      tbl.BeginLoadData();
-
-      System.IO.StringReader reader = new System.IO.StringReader(SR.MetaDataCollections);
-      tbl.ReadXml(reader);
-      reader.Close();
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Builds a DataSourceInformation datatable
-    /// </summary>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_DataSourceInformation()
-    {
-      DataTable tbl = new DataTable("DataSourceInformation");
-      DataRow row;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add(DbMetaDataColumnNames.CompositeIdentifierSeparatorPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.DataSourceProductName, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.DataSourceProductVersion, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.DataSourceProductVersionNormalized, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.GroupByBehavior, typeof(int));
-      tbl.Columns.Add(DbMetaDataColumnNames.IdentifierPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.IdentifierCase, typeof(int));
-      tbl.Columns.Add(DbMetaDataColumnNames.OrderByColumnsInSelect, typeof(bool));
-      tbl.Columns.Add(DbMetaDataColumnNames.ParameterMarkerFormat, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.ParameterMarkerPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.ParameterNameMaxLength, typeof(int));
-      tbl.Columns.Add(DbMetaDataColumnNames.ParameterNamePattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.QuotedIdentifierPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.QuotedIdentifierCase, typeof(int));
-      tbl.Columns.Add(DbMetaDataColumnNames.StatementSeparatorPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.StringLiteralPattern, typeof(string));
-      tbl.Columns.Add(DbMetaDataColumnNames.SupportedJoinOperators, typeof(int));
-
-      tbl.BeginLoadData();
-
-      row = tbl.NewRow();
-      row.ItemArray = new object[] {
-        null,
-        "Sqlite",
-        _sql.Version,
-        _sql.Version,
-        3,
-        @"(^\[\p{Lo}\p{Lu}\p{Ll}_@#][\p{Lo}\p{Lu}\p{Ll}\p{Nd}@$#_]*$)|(^\[[^\]\0]|\]\]+\]$)|(^\""[^\""\0]|\""\""+\""$)",
-        1,
-        false,
-        "{0}",
-        @"@[\p{Lo}\p{Lu}\p{Ll}\p{Lm}_@#][\p{Lo}\p{Lu}\p{Ll}\p{Lm}\p{Nd}\uff3f_@#\$]*(?=\s+|$)",
-        255,
-        @"^[\p{Lo}\p{Lu}\p{Ll}\p{Lm}_@#][\p{Lo}\p{Lu}\p{Ll}\p{Lm}\p{Nd}\uff3f_@#\$]*(?=\s+|$)",
-        @"(([^\[]|\]\])*)",
-        1,
-        ";",
-        @"'(([^']|'')*)'", // ' a bug in c-sharp mode for emacs
-        15
-      };
-      tbl.Rows.Add(row);
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Build a Columns schema
-    /// </summary>
-    /// <param name="strCatalog">The catalog (attached database) to query, can be null</param>
-    /// <param name="strTable">The table to retrieve schema information for, must not be null</param>
-    /// <param name="strColumn">The column to retrieve schema information for, can be null</param>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_Columns(string strCatalog, string strTable, string strColumn)
-    {
-      DataTable tbl = new DataTable("Columns");
-      DataRow row;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("COLUMN_NAME", typeof(string));
-      tbl.Columns.Add("COLUMN_GUID", typeof(Guid));
-      tbl.Columns.Add("COLUMN_PROPID", typeof(long));
-      tbl.Columns.Add("ORDINAL_POSITION", typeof(int));
-      tbl.Columns.Add("COLUMN_HASDEFAULT", typeof(bool));
-      tbl.Columns.Add("COLUMN_DEFAULT", typeof(string));
-      tbl.Columns.Add("COLUMN_FLAGS", typeof(long));
-      tbl.Columns.Add("IS_NULLABLE", typeof(bool));
-      tbl.Columns.Add("DATA_TYPE", typeof(string));
-      tbl.Columns.Add("TYPE_GUID", typeof(Guid));
-      tbl.Columns.Add("CHARACTER_MAXIMUM_LENGTH", typeof(int));
-      tbl.Columns.Add("CHARACTER_OCTET_LENGTH", typeof(int));
-      tbl.Columns.Add("NUMERIC_PRECISION", typeof(int));
-      tbl.Columns.Add("NUMERIC_SCALE", typeof(int));
-      tbl.Columns.Add("DATETIME_PRECISION", typeof(long));
-      tbl.Columns.Add("CHARACTER_SET_CATALOG", typeof(string));
-      tbl.Columns.Add("CHARACTER_SET_SCHEMA", typeof(string));
-      tbl.Columns.Add("CHARACTER_SET_NAME", typeof(string));
-      tbl.Columns.Add("COLLATION_CATALOG", typeof(string));
-      tbl.Columns.Add("COLLATION_SCHEMA", typeof(string));
-      tbl.Columns.Add("COLLATION_NAME", typeof(string));
-      tbl.Columns.Add("DOMAIN_CATALOG", typeof(string));
-      tbl.Columns.Add("DOMAIN_NAME", typeof(string));
-      tbl.Columns.Add("DESCRIPTION", typeof(string));
-      tbl.Columns.Add("PRIMARY_KEY", typeof(bool));
-
-      tbl.BeginLoadData();
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      using (SqliteCommand cmdTables = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'table' OR [type] LIKE 'view'", strCatalog), this))
-      using (SqliteDataReader rdTables = cmdTables.ExecuteReader())
-      {
-        while (rdTables.Read())
-        {
-          if (String.IsNullOrEmpty(strTable) || String.Compare(strTable, rdTables.GetString(2), true, CultureInfo.InvariantCulture) == 0)
-          {
-            using (SqliteCommand cmd = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[{1}]", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader(CommandBehavior.SchemaOnly))
-            using (DataTable tblSchema = rd.GetSchemaTable(false, true))
-            {
-              foreach (DataRow schemaRow in tblSchema.Rows)
-              {
-                if (String.Compare(schemaRow[SchemaTableColumn.ColumnName].ToString(), strColumn, true, CultureInfo.InvariantCulture) == 0
-                  || strColumn == null)
-                {
-                  row = tbl.NewRow();
-
-                  row["TABLE_NAME"] = rdTables.GetString(2);
-                  row["COLUMN_NAME"] = schemaRow[SchemaTableColumn.ColumnName];
-                  row["TABLE_CATALOG"] = strCatalog;
-                  row["ORDINAL_POSITION"] = schemaRow[SchemaTableColumn.ColumnOrdinal];
-                  row["COLUMN_HASDEFAULT"] = (schemaRow[SchemaTableOptionalColumn.DefaultValue] != DBNull.Value);
-                  row["COLUMN_DEFAULT"] = schemaRow[SchemaTableOptionalColumn.DefaultValue];
-                  row["IS_NULLABLE"] = schemaRow[SchemaTableColumn.AllowDBNull];
-                  row["DATA_TYPE"] = schemaRow["DataTypeName"]; // SqliteConvert.DbTypeToType((DbType)schemaRow[SchemaTableColumn.ProviderType]).ToString();
-                  row["CHARACTER_MAXIMUM_LENGTH"] = schemaRow[SchemaTableColumn.ColumnSize];
-                  row["TABLE_SCHEMA"] = schemaRow[SchemaTableColumn.BaseSchemaName];
-                  row["PRIMARY_KEY"] = schemaRow[SchemaTableColumn.IsKey];
-
-                  tbl.Rows.Add(row);
-                }
-              }
-            }
-          }
-        }
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Returns index information for the given database and catalog
-    /// </summary>
-    /// <param name="strCatalog">The catalog (attached database) to query, can be null</param>
-    /// <param name="strIndex">The name of the index to retrieve information for, can be null</param>
-    /// <param name="strTable">The table to retrieve index information for, can be null</param>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_Indexes(string strCatalog, string strTable, string strIndex)
-    {
-      DataTable tbl = new DataTable("Indexes");
-      DataRow row;
-      System.Collections.Generic.List<int> primaryKeys = new List<int>();
-      bool maybeRowId;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("INDEX_CATALOG", typeof(string));
-      tbl.Columns.Add("INDEX_SCHEMA", typeof(string));
-      tbl.Columns.Add("INDEX_NAME", typeof(string));
-      tbl.Columns.Add("PRIMARY_KEY", typeof(bool));
-      tbl.Columns.Add("UNIQUE", typeof(bool));
-      tbl.Columns.Add("CLUSTERED", typeof(bool));
-      tbl.Columns.Add("TYPE", typeof(int));
-      tbl.Columns.Add("FILL_FACTOR", typeof(int));
-      tbl.Columns.Add("INITIAL_SIZE", typeof(int));
-      tbl.Columns.Add("NULLS", typeof(int));
-      tbl.Columns.Add("SORT_BOOKMARKS", typeof(bool));
-      tbl.Columns.Add("AUTO_UPDATE", typeof(bool));
-      tbl.Columns.Add("NULL_COLLATION", typeof(int));
-      tbl.Columns.Add("ORDINAL_POSITION", typeof(int));
-      tbl.Columns.Add("COLUMN_NAME", typeof(string));
-      tbl.Columns.Add("COLUMN_GUID", typeof(Guid));
-      tbl.Columns.Add("COLUMN_PROPID", typeof(long));
-      tbl.Columns.Add("COLLATION", typeof(short));
-      tbl.Columns.Add("CARDINALITY", typeof(Decimal));
-      tbl.Columns.Add("PAGES", typeof(int));
-      tbl.Columns.Add("FILTER_CONDITION", typeof(string));
-      tbl.Columns.Add("INTEGRATED", typeof(bool));
-
-      tbl.BeginLoadData();
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      using (SqliteCommand cmdTables = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'table'", strCatalog), this))
-      using (SqliteDataReader rdTables = cmdTables.ExecuteReader())
-      {
-        while (rdTables.Read())
-        {
-          maybeRowId = false;
-          primaryKeys.Clear();
-          if (String.IsNullOrEmpty(strTable) || String.Compare(rdTables.GetString(2), strTable, true, CultureInfo.InvariantCulture) == 0)
-          {
-            // First, look for any rowid indexes -- which sqlite defines are INTEGER PRIMARY KEY columns.
-            // Such indexes are not listed in the indexes list but count as indexes just the same.
-            using (SqliteCommand cmdTable = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].table_info([{1}])", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rdTable = cmdTable.ExecuteReader())
-            {
-              while (rdTable.Read())
-              {
-                if (rdTable.GetInt32(5) == 1)
-                {
-                  primaryKeys.Add(rdTable.GetInt32(0));
-
-                  // If the primary key is of type INTEGER, then its a rowid and we need to make a fake index entry for it.
-                  if (String.Compare(rdTable.GetString(2), "INTEGER", true, CultureInfo.InvariantCulture) == 0)
-                    maybeRowId = true;
-                }
-              }
-            }
-
-            if (primaryKeys.Count == 1 && maybeRowId == true)
-            {
-              row = tbl.NewRow();
-
-              row["TABLE_CATALOG"] = strCatalog;
-              row["TABLE_NAME"] = rdTables.GetString(2);
-              row["INDEX_CATALOG"] = strCatalog;
-              row["PRIMARY_KEY"] = true;
-              row["INDEX_NAME"] = String.Format(CultureInfo.InvariantCulture, "sqlite_master_PK_{0}", rdTables.GetString(2));
-              row["UNIQUE"] = true;
-
-              if (String.Compare((string)row["INDEX_NAME"], strIndex, true, CultureInfo.InvariantCulture) == 0
-              || strIndex == null)
-              {
-                tbl.Rows.Add(row);
-              }
-
-              primaryKeys.Clear();
-            }
-
-            // Now fetch all the rest of the indexes.
-            using (SqliteCommand cmd = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].index_list([{1}])", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader())
-            {
-              while (rd.Read())
-              {
-                if (String.Compare(rd.GetString(1), strIndex, true, CultureInfo.InvariantCulture) == 0
-                || strIndex == null)
-                {
-                  row = tbl.NewRow();
-
-                  row["TABLE_CATALOG"] = strCatalog;
-                  row["TABLE_NAME"] = rdTables.GetString(2);
-                  row["INDEX_CATALOG"] = strCatalog;
-                  row["INDEX_NAME"] = rd.GetString(1);
-                  row["UNIQUE"] = rd.GetBoolean(2);
-                  row["PRIMARY_KEY"] = false;
-
-                  // Now for the really hard work.  Figure out which index is the primary key index.
-                  // The only way to figure it out is to check if the index was an autoindex and if we have a non-rowid
-                  // primary key, and all the columns in the given index match the primary key columns
-                  if (primaryKeys.Count > 0 && rd.GetString(1).StartsWith("sqlite_autoindex_" + rdTables.GetString(2), StringComparison.InvariantCultureIgnoreCase) == true)
-                  {
-                    using (SqliteCommand cmdDetails = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].index_info([{1}])", strCatalog, rd.GetString(1)), this))
-                    using (SqliteDataReader rdDetails = cmdDetails.ExecuteReader())
-                    {
-                      int nMatches = 0;
-                      while (rdDetails.Read())
-                      {
-                        if (primaryKeys.Contains(rdDetails.GetInt32(1)) == false)
-                        {
-                          nMatches = 0;
-                          break;
-                        }
-                        nMatches++;
-                      }
-                      if (nMatches == primaryKeys.Count)
-                      {
-                        row["PRIMARY_KEY"] = true;
-                        primaryKeys.Clear();
-                      }
-                    }
-                  }
-
-                  tbl.Rows.Add(row);
-                }
-              }
-            }
-          }
-        }
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Retrieves table schema information for the database and catalog
-    /// </summary>
-    /// <param name="strCatalog">The catalog (attached database) to retrieve tables on</param>
-    /// <param name="strTable">The table to retrieve, can be null</param>
-    /// <param name="strType">The table type, can be null</param>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_Tables(string strCatalog, string strTable, string strType)
-    {
-      DataTable tbl = new DataTable("Tables");
-      DataRow row;
-      string strItem;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("TABLE_TYPE", typeof(string));
-      tbl.Columns.Add("TABLE_ID", typeof(long));
-      tbl.Columns.Add("TABLE_ROOTPAGE", typeof(int));
-
-      tbl.BeginLoadData();
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      using (SqliteCommand cmd = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT [type], [name], [tbl_name], [rootpage], [sql], [rowid] FROM [{0}].[sqlite_master] WHERE [type] LIKE 'table'", strCatalog), this))
-      using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader())
-      {
-        while (rd.Read())
-        {
-          strItem = rd.GetString(0);
-          if (String.Compare(rd.GetString(2), 0, "SQLITE_", 0, 7, true, CultureInfo.InvariantCulture) == 0)
-            strItem = "SYSTEM_TABLE";
-
-          if (String.Compare(strType, strItem, true, CultureInfo.InvariantCulture) == 0
-            || strType == null)
-          {
-            if (String.Compare(rd.GetString(2), strTable, true, CultureInfo.InvariantCulture) == 0
-              || strTable == null)
-            {
-              row = tbl.NewRow();
-
-              row["TABLE_CATALOG"] = strCatalog;
-              row["TABLE_NAME"] = rd.GetString(2);
-              row["TABLE_TYPE"] = strItem;
-              row["TABLE_ID"] = rd.GetInt64(5);
-              row["TABLE_ROOTPAGE"] = rd.GetInt32(3);
-
-              tbl.Rows.Add(row);
-            }
-          }
-        }
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Retrieves view schema information for the database
-    /// </summary>
-    /// <param name="strCatalog">The catalog (attached database) to retrieve views on</param>
-    /// <param name="strView">The view name, can be null</param>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_Views(string strCatalog, string strView)
-    {
-      DataTable tbl = new DataTable("Views");
-      DataRow row;
-      string strItem;
-      int nPos;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("VIEW_DEFINITION", typeof(string));
-      tbl.Columns.Add("CHECK_OPTION", typeof(bool));
-      tbl.Columns.Add("IS_UPDATABLE", typeof(bool));
-      tbl.Columns.Add("DESCRIPTION", typeof(string));
-      tbl.Columns.Add("DATE_CREATED", typeof(DateTime));
-      tbl.Columns.Add("DATE_MODIFIED", typeof(DateTime));
-
-      tbl.BeginLoadData();
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      using (SqliteCommand cmd = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'view'", strCatalog), this))
-      using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader())
-      {
-        while (rd.Read())
-        {
-          if (String.Compare(rd.GetString(1), strView, true, CultureInfo.InvariantCulture) == 0
-            || String.IsNullOrEmpty(strView))
-          {
-            strItem = rd.GetString(4).Replace('\r', ' ').Replace('\n', ' ').Replace('\t', ' ');
-            nPos = System.Globalization.CultureInfo.InvariantCulture.CompareInfo.IndexOf(strItem, " AS ", CompareOptions.IgnoreCase);
-            if (nPos > -1)
-            {
-              strItem = strItem.Substring(nPos + 4).Trim();
-              row = tbl.NewRow();
-
-              row["TABLE_CATALOG"] = strCatalog;
-              row["TABLE_NAME"] = rd.GetString(2);
-              row["IS_UPDATABLE"] = false;
-              row["VIEW_DEFINITION"] = strItem;
-
-              tbl.Rows.Add(row);
-            }
-          }
-        }
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Retrieves catalog (attached databases) schema information for the database
-    /// </summary>
-    /// <param name="strCatalog">The catalog to retrieve, can be null</param>
-    /// <returns>DataTable</returns>
-    private DataTable Schema_Catalogs(string strCatalog)
-    {
-      DataTable tbl = new DataTable("Catalogs");
-      DataRow row;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("CATALOG_NAME", typeof(string));
-      tbl.Columns.Add("DESCRIPTION", typeof(string));
-      tbl.Columns.Add("ID", typeof(long));
-
-      tbl.BeginLoadData();
-
-      using (SqliteCommand cmd = new SqliteCommand("PRAGMA database_list", this))
-      using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader())
-      {
-        while (rd.Read())
-        {
-          if (String.Compare(rd.GetString(1), strCatalog, true, CultureInfo.InvariantCulture) == 0
-            || strCatalog == null)
-          {
-            row = tbl.NewRow();
-
-            row["CATALOG_NAME"] = rd.GetString(1);
-            row["DESCRIPTION"] = rd.GetString(2);
-            row["ID"] = rd.GetInt64(0);
-
-            tbl.Rows.Add(row);
-          }
-        }
-      }
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    private DataTable Schema_DataTypes()
-    {
-      DataTable tbl = new DataTable("DataTypes");
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("TypeName", typeof(String));
-      tbl.Columns.Add("ProviderDbType", typeof(int));
-      tbl.Columns.Add("ColumnSize", typeof(long));
-      tbl.Columns.Add("CreateFormat", typeof(String));
-      tbl.Columns.Add("CreateParameters", typeof(String));
-      tbl.Columns.Add("DataType", typeof(String));
-      tbl.Columns.Add("IsAutoIncrementable", typeof(bool));
-      tbl.Columns.Add("IsBestMatch", typeof(bool));
-      tbl.Columns.Add("IsCaseSensitive", typeof(bool));
-      tbl.Columns.Add("IsFixedLength", typeof(bool));
-      tbl.Columns.Add("IsFixedPrecisionScale", typeof(bool));
-      tbl.Columns.Add("IsLong", typeof(bool));
-      tbl.Columns.Add("IsNullable", typeof(bool));
-      tbl.Columns.Add("IsSearchable", typeof(bool));
-      tbl.Columns.Add("IsSearchableWithLike", typeof(bool));
-      tbl.Columns.Add("IsLiteralSupported", typeof(bool));
-      tbl.Columns.Add("LiteralPrefix", typeof(String));
-      tbl.Columns.Add("LiteralSuffix", typeof(String));
-      tbl.Columns.Add("IsUnsigned", typeof(bool));
-      tbl.Columns.Add("MaximumScale", typeof(short));
-      tbl.Columns.Add("MinimumScale", typeof(short));
-      tbl.Columns.Add("IsConcurrencyType", typeof(bool));
-
-      tbl.BeginLoadData();
-
-      System.IO.StringReader reader = new System.IO.StringReader(SR.DataTypes);
-      tbl.ReadXml(reader);
-      reader.Close();
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Returns the base column information for indexes in a database
-    /// </summary>
-    /// <param name="strCatalog">The catalog to retrieve indexes for (can be null)</param>
-    /// <param name="strTable">The table to restrict index information by (can be null)</param>
-    /// <param name="strIndex">The index to restrict index information by (can be null)</param>
-    /// <param name="strColumn">The source column to restrict index information by (can be null)</param>
-    /// <returns>A DataTable containing the results</returns>
-    private DataTable Schema_IndexColumns(string strCatalog, string strTable, string strIndex, string strColumn)
-    {
-      DataTable tbl = new DataTable("IndexColumns");
-      DataRow row;
-      List<KeyValuePair<int, string>> primaryKeys = new List<KeyValuePair<int, string>>();
-      bool maybeRowId;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("CONSTRAINT_CATALOG", typeof(string));
-      tbl.Columns.Add("CONSTRAINT_SCHEMA", typeof(string));
-      tbl.Columns.Add("CONSTRAINT_NAME", typeof(string));
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("COLUMN_NAME", typeof(string));
-      tbl.Columns.Add("ORDINAL_POSITION", typeof(int));
-      tbl.Columns.Add("INDEX_NAME", typeof(string));
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      tbl.BeginLoadData();
-
-      using (SqliteCommand cmdTables = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'table'", strCatalog), this))
-      using (SqliteDataReader rdTables = cmdTables.ExecuteReader())
-      {
-        while (rdTables.Read())
-        {
-          maybeRowId = false;
-          primaryKeys.Clear();
-          if (String.IsNullOrEmpty(strTable) || String.Compare(rdTables.GetString(2), strTable, true, CultureInfo.InvariantCulture) == 0)
-          {
-            using (SqliteCommand cmdTable = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].table_info([{1}])", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rdTable = cmdTable.ExecuteReader())
-            {
-              while (rdTable.Read())
-              {
-                if (rdTable.GetInt32(5) == 1) // is a primary key
-                {
-                  primaryKeys.Add(new KeyValuePair<int, string>(rdTable.GetInt32(0), rdTable.GetString(1)));
-                  // Is an integer -- could be a rowid if no other primary keys exist in the table
-                  if (String.Compare(rdTable.GetString(2), "INTEGER", true, CultureInfo.InvariantCulture) == 0)
-                    maybeRowId = true;
-                }
-              }
-            }
-            if (primaryKeys.Count == 1 && maybeRowId == true)
-            {
-              row = tbl.NewRow();
-              row["CONSTRAINT_CATALOG"] = strCatalog;
-              row["CONSTRAINT_NAME"] = String.Format(CultureInfo.InvariantCulture, "sqlite_master_PK_{0}", rdTables.GetString(2));
-              row["TABLE_CATALOG"] = strCatalog;
-              row["TABLE_NAME"] = rdTables.GetString(2);
-              row["COLUMN_NAME"] = primaryKeys[0].Value;
-              row["INDEX_NAME"] = row["CONSTRAINT_NAME"];
-              row["ORDINAL_POSITION"] = primaryKeys[0].Key;
-
-              if (String.IsNullOrEmpty(strIndex) || String.Compare(strIndex, (string)row["INDEX_NAME"], true, CultureInfo.InvariantCulture) == 0)
-                tbl.Rows.Add(row);
-            }
-
-            using (SqliteCommand cmdIndexes = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'index' AND [tbl_name] LIKE '{1}'", strCatalog, rdTables.GetString(2).Replace("'", "''")), this))
-            using (SqliteDataReader rdIndexes = cmdIndexes.ExecuteReader())
-            {
-              while (rdIndexes.Read())
-              {
-                if (String.IsNullOrEmpty(strIndex) || String.Compare(strIndex, rdIndexes.GetString(1), true, CultureInfo.InvariantCulture) == 0)
-                {
-                  using (SqliteCommand cmdIndex = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].index_info([{1}])", strCatalog, rdIndexes.GetString(1)), this))
-                  using (SqliteDataReader rdIndex = cmdIndex.ExecuteReader())
-                  {
-                    while (rdIndex.Read())
-                    {
-                      row = tbl.NewRow();
-                      row["CONSTRAINT_CATALOG"] = strCatalog;
-                      row["CONSTRAINT_NAME"] = rdIndexes.GetString(1);
-                      row["TABLE_CATALOG"] = strCatalog;
-                      row["TABLE_NAME"] = rdIndexes.GetString(2);
-                      row["COLUMN_NAME"] = rdIndex.GetString(2);
-                      row["INDEX_NAME"] = rdIndexes.GetString(1);
-                      row["ORDINAL_POSITION"] = rdIndex.GetInt32(1);
-
-                      if (String.IsNullOrEmpty(strColumn) || String.Compare(strColumn, row["COLUMN_NAME"].ToString(), true, CultureInfo.InvariantCulture) == 0)
-                        tbl.Rows.Add(row);
-                    }
-                  }
-                }
-              }
-            }
-          }
-        }
-      }
-
-      tbl.EndLoadData();
-      tbl.AcceptChanges();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Returns detailed column information for a specified view
-    /// </summary>
-    /// <param name="strCatalog">The catalog to retrieve columns for (can be null)</param>
-    /// <param name="strView">The view to restrict column information by (can be null)</param>
-    /// <param name="strColumn">The source column to restrict column information by (can be null)</param>
-    /// <returns>A DataTable containing the results</returns>
-    private DataTable Schema_ViewColumns(string strCatalog, string strView, string strColumn)
-    {
-      DataTable tbl = new DataTable("ViewColumns");
-      DataRow row;
-      string strSql;
-      int n;
-      DataRow schemaRow;
-      DataRow viewRow;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("VIEW_CATALOG", typeof(string));
-      tbl.Columns.Add("VIEW_SCHEMA", typeof(string));
-      tbl.Columns.Add("VIEW_NAME", typeof(string));
-      tbl.Columns.Add("VIEW_COLUMN_NAME", typeof(String));
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("COLUMN_NAME", typeof(string));
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      tbl.BeginLoadData();
-
-      using (SqliteCommand cmdViews = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'view'", strCatalog), this))
-      using (SqliteDataReader rdViews = cmdViews.ExecuteReader())
-      {
-        while (rdViews.Read())
-        {
-          if (String.IsNullOrEmpty(strView) || String.Compare(strView, rdViews.GetString(2), true, CultureInfo.InvariantCulture) == 0)
-          {
-            using (SqliteCommand cmdViewSelect = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[{1}]", strCatalog, rdViews.GetString(2)), this))
-            {
-              strSql = rdViews.GetString(4).Replace('\r', ' ').Replace('\n', ' ').Replace('\t', ' ');
-              n = CultureInfo.InvariantCulture.CompareInfo.IndexOf(strSql, " AS ", CompareOptions.IgnoreCase);
-              if (n < 0)
-                continue;
-
-              strSql = strSql.Substring(n + 4);
-
-              using (SqliteCommand cmd = new SqliteCommand(strSql, this))
-              using (SqliteDataReader rdViewSelect = cmdViewSelect.ExecuteReader(CommandBehavior.SchemaOnly))
-              using (SqliteDataReader rd = (SqliteDataReader)cmd.ExecuteReader(CommandBehavior.SchemaOnly))
-              using (DataTable tblSchemaView = rdViewSelect.GetSchemaTable(false, false))
-              using (DataTable tblSchema = rd.GetSchemaTable(false, false))
-              {
-                for (n = 0; n < tblSchema.Rows.Count; n++)
-                {
-                  viewRow = tblSchemaView.Rows[n];
-                  schemaRow = tblSchema.Rows[n];
-
-                  if (String.Compare(viewRow[SchemaTableColumn.ColumnName].ToString(), strColumn, true, CultureInfo.InvariantCulture) == 0
-                    || strColumn == null)
-                  {
-                    row = tbl.NewRow();
-
-                    row["VIEW_CATALOG"] = strCatalog;
-                    row["VIEW_NAME"] = rdViews.GetString(2);
-                    row["TABLE_CATALOG"] = strCatalog;
-                    row["TABLE_SCHEMA"] = schemaRow[SchemaTableColumn.BaseSchemaName];
-                    row["TABLE_NAME"] = schemaRow[SchemaTableColumn.BaseTableName];
-                    row["COLUMN_NAME"] = schemaRow[SchemaTableColumn.ColumnName];
-                    row["VIEW_COLUMN_NAME"] = viewRow[SchemaTableColumn.ColumnName];
-
-                    tbl.Rows.Add(row);
-                  }
-                }
-              }
-            }
-          }
-        }
-      }
-
-      tbl.EndLoadData();
-      tbl.AcceptChanges();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Retrieves foreign key information from the specified set of filters
-    /// </summary>
-    /// <param name="strCatalog">An optional catalog to restrict results on</param>
-    /// <param name="strTable">An optional table to restrict results on</param>
-    /// <param name="strKeyName">An optional foreign key name to restrict results on</param>
-    /// <returns>A DataTable with the results of the query</returns>
-    private DataTable Schema_ForeignKeys(string strCatalog, string strTable, string strKeyName)
-    {
-      DataTable tbl = new DataTable("ForeignKeys");
-      DataRow row;
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add("CONSTRAINT_CATALOG", typeof(string));
-      tbl.Columns.Add("CONSTRAINT_SCHEMA", typeof(string));
-      tbl.Columns.Add("CONSTRAINT_NAME", typeof(string));
-      tbl.Columns.Add("TABLE_CATALOG", typeof(string));
-      tbl.Columns.Add("TABLE_SCHEMA", typeof(string));
-      tbl.Columns.Add("TABLE_NAME", typeof(string));
-      tbl.Columns.Add("CONSTRAINT_TYPE", typeof(string));
-      tbl.Columns.Add("IS_DEFERRABLE", typeof(bool));
-      tbl.Columns.Add("INITIALLY_DEFERRED", typeof(bool));
-      tbl.Columns.Add("FKEY_FROM_COLUMN", typeof(string));
-      tbl.Columns.Add("FKEY_FROM_ORDINAL_POSITION", typeof(int));
-      tbl.Columns.Add("FKEY_TO_CATALOG", typeof(string));
-      tbl.Columns.Add("FKEY_TO_SCHEMA", typeof(string));
-      tbl.Columns.Add("FKEY_TO_TABLE", typeof(string));
-      tbl.Columns.Add("FKEY_TO_COLUMN", typeof(string));
-
-      if (String.IsNullOrEmpty(strCatalog)) strCatalog = "main";
-
-      tbl.BeginLoadData();
-
-      using (SqliteCommand cmdTables = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[sqlite_master] WHERE [type] LIKE 'table'", strCatalog), this))
-      using (SqliteDataReader rdTables = cmdTables.ExecuteReader())
-      {
-        while (rdTables.Read())
-        {
-          if (String.IsNullOrEmpty(strTable) || String.Compare(strTable, rdTables.GetString(2), true, CultureInfo.InvariantCulture) == 0)
-          {
-            using (SqliteCommand cmdTable = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "SELECT * FROM [{0}].[{1}]", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rdTable = cmdTable.ExecuteReader(CommandBehavior.SchemaOnly))
-            using (SqliteCommand cmdKey = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].foreign_key_list([{1}])", strCatalog, rdTables.GetString(2)), this))
-            using (SqliteDataReader rdKey = cmdKey.ExecuteReader())
-            {
-              while (rdKey.Read())
-              {
-                row = tbl.NewRow();
-                row["CONSTRAINT_CATALOG"] = strCatalog;
-                row["CONSTRAINT_NAME"] = String.Format(CultureInfo.InvariantCulture, "FK_{0}_{1}_{2}", rdTables.GetString(2), rdKey.GetString(3), rdKey.GetString(4));
-                row["TABLE_CATALOG"] = strCatalog;
-                row["TABLE_NAME"] = rdTables.GetString(2);
-                row["CONSTRAINT_TYPE"] = "FOREIGN KEY";
-                row["IS_DEFERRABLE"] = false;
-                row["INITIALLY_DEFERRED"] = false;
-                row["FKEY_FROM_COLUMN"] = rdKey.GetString(3);
-                row["FKEY_FROM_ORDINAL_POSITION"] = rdTable.GetOrdinal(row["FKEY_FROM_COLUMN"].ToString());
-                row["FKEY_TO_CATALOG"] = strCatalog;
-                row["FKEY_TO_TABLE"] = rdKey.GetString(2);
-                row["FKEY_TO_COLUMN"] = rdKey.GetString(4);
-
-                if (String.IsNullOrEmpty(strKeyName) || String.Compare(strKeyName, row["CONSTRAINT_NAME"].ToString(), true, CultureInfo.InvariantCulture) == 0)
-                  tbl.Rows.Add(row);
-              }
-            }
-          }
-        }
-      }
-
-      tbl.EndLoadData();
-      tbl.AcceptChanges();
-
-      return tbl;
-    }
-
-    internal void AddCommand(SqliteCommand cmd)
-    {
-      lock (_commandList)
-      {
-        _commandList.Add(cmd);
-      }
-    }
-
-    internal void RemoveCommand(SqliteCommand cmd)
-    {
-      lock (_commandList)
-      {
-        _commandList.Remove(cmd);
-      }
-    }
-
-#if MONO_BACKWARD_COMPAT
-    /// <summary>
-    /// Obsolete
-    /// </summary>
-    public override int ConnectionTimeout
-    {
-      get
-      {
-        return 30;
-      }
-    }
-
-    public int Version {
-      get { return 3; }
-    }
-
-    public long LastInsertRowId {
-	get { return _sql.GetLastInsertRowId (); }
-    }
-
-    public int BusyTimeout {
-	    get { return _busyTimeout; }
-    }
-#endif
-  }
-
-  /// <summary>
-  /// The I/O file cache flushing behavior for the connection
-  /// </summary>
-  public enum SynchronizationModes
-  {
-    /// <summary>
-    /// Normal file flushing at critical sections of the code
-    /// </summary>
-    Normal = 0,
-    /// <summary>
-    /// Full file flushing after every write operation
-    /// </summary>
-    Full = 1,
-    /// <summary>
-    /// Use the default operating system's file flushing, Sqlite does not explicitly flush the file buffers after writing
-    /// </summary>
-    Off = 2,
-  }
-
-  internal delegate void SqliteUpdateCallback(int type, IntPtr database, int databaseLen, IntPtr table, int tableLen, Int64 rowid);
-  internal delegate int SqliteCommitCallback();
-  internal delegate void SqliteRollbackCallback();
-
-  /// <summary>
-  /// Raised when a transaction is about to be committed.  To roll back a transaction, set the
-  /// rollbackTrans boolean value to true.
-  /// </summary>
-  /// <param name="sender">The connection committing the transaction</param>
-  /// <param name="e">Event arguments on the transaction</param>
-  public delegate void SqliteCommitHandler(object sender, CommitEventArgs e);
-
-  /// <summary>
-  /// Raised when data is inserted, updated and deleted on a given connection
-  /// </summary>
-  /// <param name="sender">The connection committing the transaction</param>
-  /// <param name="e">The event parameters which triggered the event</param>
-  public delegate void SqliteUpdateEventHandler(object sender, UpdateEventArgs e);
-
-  /// <summary>
-  /// Whenever an update event is triggered on a connection, this enum will indicate
-  /// exactly what type of operation is being performed.
-  /// </summary>
-  public enum UpdateEventType
-  {
-    /// <summary>
-    /// A row is being deleted from the given database and table
-    /// </summary>
-    Delete = 9,
-    /// <summary>
-    /// A row is being inserted into the table.
-    /// </summary>
-    Insert = 18,
-    /// <summary>
-    /// A row is being updated in the table.
-    /// </summary>
-    Update = 23,
-  }
-
-  /// <summary>
-  /// Passed during an Update callback, these event arguments detail the type of update operation being performed
-  /// on the given connection.
-  /// </summary>
-  public class UpdateEventArgs : EventArgs
-  {
-    /// <summary>
-    /// The name of the database being updated (usually "main" but can be any attached or temporary database)
-    /// </summary>
-    public readonly string Database;
-
-    /// <summary>
-    /// The name of the table being updated
-    /// </summary>
-    public readonly string Table;
-
-    /// <summary>
-    /// The type of update being performed (insert/update/delete)
-    /// </summary>
-    public readonly UpdateEventType Event;
-
-    /// <summary>
-    /// The RowId affected by this update.
-    /// </summary>
-    public readonly Int64 RowId;
-
-    internal UpdateEventArgs(string database, string table, UpdateEventType eventType, Int64 rowid)
-    {
-      Database = database;
-      Table = table;
-      Event = eventType;
-      RowId = rowid;
-    }
-  }
-
-  /// <summary>
-  /// Event arguments raised when a transaction is being committed
-  /// </summary>
-  public class CommitEventArgs : EventArgs
-  {
-    internal CommitEventArgs()
-    {
-    }
-
-    /// <summary>
-    /// Set to true to abort the transaction and trigger a rollback
-    /// </summary>
-    public bool AbortTransaction;
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnectionStringBuilder.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnectionStringBuilder.cs
deleted file mode 100644
index bb813f0..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConnectionStringBuilder.cs
+++ /dev/null
@@ -1,323 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteConnectionStringBuilder.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data.Common;
-  using System.ComponentModel;
-  using System.Collections;
-  using System.Globalization;
-  using System.Reflection;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-  using System.ComponentModel.Design;
-
-  /// <summary>
-  /// Sqlite implementation of DbConnectionStringBuilder.
-  /// </summary>
-  [DefaultProperty("DataSource")]
-  [DefaultMember("Item")]
-  public sealed class SqliteConnectionStringBuilder : DbConnectionStringBuilder
-  {
-    /// <summary>
-    /// Properties of this class
-    /// </summary>
-    private Hashtable _properties;
-
-    /// <overloads>
-    /// Constructs a new instance of the class
-    /// </overloads>
-    /// <summary>
-    /// Default constructor
-    /// </summary>
-    public SqliteConnectionStringBuilder()
-    {
-      Initialize(null);
-    }
-
-    /// <summary>
-    /// Constructs a new instance of the class using the specified connection string.
-    /// </summary>
-    /// <param name="connectionString">The connection string to parse</param>
-    public SqliteConnectionStringBuilder(string connectionString)
-    {
-      Initialize(connectionString);
-    }
-
-    /// <summary>
-    /// Private initializer, which assigns the connection string and resets the builder
-    /// </summary>
-    /// <param name="cnnString">The connection string to assign</param>
-    private void Initialize(string cnnString)
-    {
-      _properties = new Hashtable();
-      base.GetProperties(_properties);
-
-      if (String.IsNullOrEmpty(cnnString) == false)
-        ConnectionString = cnnString;
-    }
-
-    /// <summary>
-    /// Gets/Sets the default version of the Sqlite engine to instantiate.  Currently the only valid value is 3, indicating version 3 of the sqlite library.
-    /// </summary>
-    [Browsable(true)]
-    [DefaultValue(3)]
-    public int Version
-    {
-      get
-      {
-        if (ContainsKey("Version") == false) return 3;
-
-        return Convert.ToInt32(this["Version"], CultureInfo.CurrentCulture);
-      }
-      set
-      {
-        if (value != 3)
-          throw new NotSupportedException();
-
-        this["Version"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the synchronous mode of the connection string.  Default is "Normal".
-    /// </summary>
-    [DisplayName("Synchronous")]
-    [Browsable(true)]
-    [DefaultValue(SynchronizationModes.Normal)]
-    public SynchronizationModes SyncMode
-    {
-      get
-      {
-        return (SynchronizationModes)TypeDescriptor.GetConverter(typeof(SynchronizationModes)).ConvertFrom(this["Synchronous"]);
-      }
-      set
-      {
-        this["Synchronous"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the encoding for the connection string.  The default is "False" which indicates UTF-8 encoding.
-    /// </summary>
-    [Browsable(true)]
-    [DefaultValue(false)]
-    public bool UseUTF16Encoding
-    {
-      get
-      {
-        return Convert.ToBoolean(this["UseUTF16Encoding"], CultureInfo.CurrentCulture);
-      }
-      set
-      {
-        this["UseUTF16Encoding"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the filename to open on the connection string.
-    /// </summary>
-    [DisplayName("Data Source")]
-    [Browsable(true)]
-    public string DataSource
-    {
-      get
-      {
-        if (ContainsKey("Data Source") == false) return "";
-
-        return this["Data Source"].ToString();
-      }
-      set
-      {
-        this["Data Source"] = value;
-      }
-    }
-
-#region Mono-specific
-    /// <summary>
-    /// Gets/Sets the filename to open on the connection string (Mono-specific, uses DataSource).
-    /// </summary>
-    [DisplayName("Data Source")]
-    [Browsable(true)]
-    public string Uri
-    {
-      get
-      {
-	return DataSource;
-      }
-      set
-      {
-        DataSource = value;
-      }
-    }
-#endregion
-
-    /// <summary>
-    /// Determines whether or not the connection will automatically participate
-    /// in the current distributed transaction (if one exists)
-    /// </summary>
-    [DisplayName("Automatic Enlistment")]
-    [Browsable(true)]
-    [DefaultValue(true)]
-    public bool Enlist
-    {
-      get
-      {
-        if (ContainsKey("Enlist") == false) return true;
-
-        return (this["Enlist"].ToString() == "Y");
-      }
-      set
-      {
-        this["Enlist"] = (value == true) ? "Y" : "N";
-      }
-    }
-    /// <summary>
-    /// Gets/sets the database encryption password
-    /// </summary>
-    [Browsable(true)]
-    [PasswordPropertyText(true)]
-    public string Password
-    {
-      get
-      {
-        if (ContainsKey("Password") == false) return "";
-
-        return this["Password"].ToString();
-      }
-      set
-      {
-        this["Password"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the page size for the connection.
-    /// </summary>
-    [DisplayName("Page Size")]
-    [Browsable(true)]
-    [DefaultValue(1024)]
-    public int PageSize
-    {
-      get
-      {
-        if (ContainsKey("Page Size") == false) return 1024;
-        return Convert.ToInt32(this["Page Size"], CultureInfo.InvariantCulture);
-      }
-      set
-      {
-        this["Page Size"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the cache size for the connection.
-    /// </summary>
-    [DisplayName("Cache Size")]
-    [Browsable(true)]
-    [DefaultValue(2000)]
-    public int CacheSize
-    {
-      get
-      {
-        if (ContainsKey("Cache Size") == false) return 2000;
-        return Convert.ToInt32(this["Cache Size"], CultureInfo.InvariantCulture);
-      }
-      set
-      {
-        this["Cache Size"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/Sets the datetime format for the connection.
-    /// </summary>
-    [Browsable(true)]
-    [DefaultValue(SqliteDateFormats.ISO8601)]
-    public SqliteDateFormats DateTimeFormat
-    {
-      get
-      {
-        if (ContainsKey("DateTimeFormat") == false) return SqliteDateFormats.ISO8601;
-
-        return (SqliteDateFormats)TypeDescriptor.GetConverter(typeof(SqliteDateFormats)).ConvertFrom(this["DateTimeFormat"]);
-      }
-      set
-      {
-        this["DateTimeFormat"] = value;
-      }
-    }
-
-    /// <summary>
-    /// Helper function for retrieving values from the connectionstring
-    /// </summary>
-    /// <param name="keyword">The keyword to retrieve settings for</param>
-    /// <param name="value">The resulting parameter value</param>
-    /// <returns>Returns true if the value was found and returned</returns>
-    public override bool TryGetValue(string keyword, out object value)
-    {
-      bool b = base.TryGetValue(keyword, out value);
-
-      if (!_properties.ContainsKey(keyword)) return b;
-
-      PropertyDescriptor pd = _properties[keyword] as PropertyDescriptor;
-
-      if (pd == null) return b;
-
-      if (b)
-      {
-        value = TypeDescriptor.GetConverter(pd.PropertyType).ConvertFrom(value);
-      }
-      else
-      {
-        DefaultValueAttribute att = pd.Attributes[typeof(DefaultValueAttribute)] as DefaultValueAttribute;
-        if (att != null)
-        {
-          value = att.Value;
-          b = true;
-        }
-      }
-      return b;
-    }
-  }
-#endif
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConvert.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConvert.cs
deleted file mode 100644
index c168d44..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteConvert.cs
+++ /dev/null
@@ -1,641 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteConvert.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Runtime.InteropServices;
-  using System.Collections.Generic;
-  using System.ComponentModel;
-  using System.Globalization;
-  using System.Text;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-  using System.ComponentModel.Design;
-#endif
-
-  /// <summary>
-  /// Sqlite has very limited types, and is inherently text-based.  The first 5 types below represent the sum of all types Sqlite
-  /// understands.  The DateTime extension to the spec is for internal use only.
-  /// </summary>
-  public enum TypeAffinity
-  {
-    /// <summary>
-    /// Not used
-    /// </summary>
-    Uninitialized = 0,
-    /// <summary>
-    /// All integers in Sqlite default to Int64
-    /// </summary>
-    Int64 = 1,
-    /// <summary>
-    /// All floating point numbers in Sqlite default to double
-    /// </summary>
-    Double = 2,
-    /// <summary>
-    /// The default data type of Sqlite is text
-    /// </summary>
-    Text = 3,
-    /// <summary>
-    /// Typically blob types are only seen when returned from a function
-    /// </summary>
-    Blob = 4,
-    /// <summary>
-    /// Null types can be returned from functions
-    /// </summary>
-    Null = 5,
-    /// <summary>
-    /// Used internally by this provider
-    /// </summary>
-    DateTime = 10,
-    /// <summary>
-    /// Used internally
-    /// </summary>
-    None = 11,
-  }
-
-  /// <summary>
-  /// This implementation of Sqlite for ADO.NET can process date/time fields in databases in only one of two formats.  Ticks and ISO8601.
-  /// Ticks is inherently more accurate, but less compatible with 3rd party tools that query the database, and renders the DateTime field
-  /// unreadable without post-processing.
-  /// ISO8601 is more compatible, readable, fully-processable, but less accurate as it doesn't provide time down to fractions of a second.
-  /// </summary>
-  public enum SqliteDateFormats
-  {
-    /// <summary>
-    /// Using ticks is more accurate but less compatible with other viewers and utilities that access your database.
-    /// </summary>
-    Ticks = 0,
-    /// <summary>
-    /// The default format for this provider.
-    /// </summary>
-    ISO8601 = 1,
-  }
-
-  /// <summary>
-  /// Struct used internally to determine the datatype of a column in a resultset
-  /// </summary>
-  internal class SqliteType
-  {
-    /// <summary>
-    /// The DbType of the column, or DbType.Object if it cannot be determined
-    /// </summary>
-    internal DbType Type;
-    /// <summary>
-    /// The affinity of a column, used for expressions or when Type is DbType.Object
-    /// </summary>
-    internal TypeAffinity Affinity;
-  }
-
-  /// <summary>
-  /// This base class provides datatype conversion services for the Sqlite provider.
-  /// </summary>
-  public abstract class SqliteConvert
-  {
-    /// <summary>
-    /// An array of ISO8601 datetime formats we support conversion from
-    /// </summary>
-    private static string[] _datetimeFormats = new string[] {
-      "yyyy-MM-dd HH:mm:ss.fffffff",
-      "yyyy-MM-dd HH:mm:ss",
-      "yyyy-MM-dd HH:mm",
-      "yyyyMMddHHmmss",
-      "yyyyMMddHHmm",
-      "yyyyMMddTHHmmssfffffff",
-      "yyyy-MM-dd",
-      "yy-MM-dd",
-      "yyyyMMdd",
-      "HH:mm:ss",
-      "HH:mm",
-      "THHmmss",
-      "THHmm",
-      "yyyy-MM-dd HH:mm:ss.fff",
-      "yyyy-MM-ddTHH:mm",
-      "yyyy-MM-ddTHH:mm:ss",
-      "yyyy-MM-ddTHH:mm:ss.fff",
-      "yyyy-MM-ddTHH:mm:ss.ffffff",
-      "HH:mm:ss.fff"
-    };
-
-    /// <summary>
-    /// An UTF-8 Encoding instance, so we can convert strings to and from UTF-8
-    /// </summary>
-    private Encoding _utf8 = new UTF8Encoding();
-    /// <summary>
-    /// The default DateTime format for this instance
-    /// </summary>
-    internal SqliteDateFormats _datetimeFormat;
-    /// <summary>
-    /// Initializes the conversion class
-    /// </summary>
-    /// <param name="fmt">The default date/time format to use for this instance</param>
-    internal SqliteConvert(SqliteDateFormats fmt)
-    {
-      _datetimeFormat = fmt;
-    }
-
-    #region UTF-8 Conversion Functions
-    /// <summary>
-    /// Converts a string to a UTF-8 encoded byte array sized to include a null-terminating character.
-    /// </summary>
-    /// <param name="sourceText">The string to convert to UTF-8</param>
-    /// <returns>A byte array containing the converted string plus an extra 0 terminating byte at the end of the array.</returns>
-    public byte[] ToUTF8(string sourceText)
-    {
-      Byte[] byteArray;
-      int nlen = _utf8.GetByteCount(sourceText) + 1;
-
-      byteArray = new byte[nlen];
-      nlen = _utf8.GetBytes(sourceText, 0, sourceText.Length, byteArray, 0);
-      byteArray[nlen] = 0;
-
-      return byteArray;
-    }
-
-    /// <summary>
-    /// Convert a DateTime to a UTF-8 encoded, zero-terminated byte array.
-    /// </summary>
-    /// <remarks>
-    /// This function is a convenience function, which first calls ToString() on the DateTime, and then calls ToUTF8() with the
-    /// string result.
-    /// </remarks>
-    /// <param name="dateTimeValue">The DateTime to convert.</param>
-    /// <returns>The UTF-8 encoded string, including a 0 terminating byte at the end of the array.</returns>
-    public byte[] ToUTF8(DateTime dateTimeValue)
-    {
-      return ToUTF8(ToString(dateTimeValue));
-    }
-
-    /// <summary>
-    /// Converts a UTF-8 encoded IntPtr of the specified length into a .NET string
-    /// </summary>
-    /// <param name="nativestring">The pointer to the memory where the UTF-8 string is encoded</param>
-    /// <param name="nativestringlen">The number of bytes to decode</param>
-    /// <returns>A string containing the translated character(s)</returns>
-    public virtual string ToString(IntPtr nativestring)
-    {
-      return UTF8ToString(nativestring);
-    }
-
-    /// <summary>
-    /// Converts a UTF-8 encoded IntPtr of the specified length into a .NET string
-    /// </summary>
-    /// <param name="nativestring">The pointer to the memory where the UTF-8 string is encoded</param>
-    /// <param name="nativestringlen">The number of bytes to decode</param>
-    /// <returns>A string containing the translated character(s)</returns>
-    public virtual string UTF8ToString(IntPtr nativestring)
-    {
-      if (nativestring == IntPtr.Zero)
-        return null;
-
-      // This assumes a single byte terminates the string.
-
-      int len = 0;
-      while (Marshal.ReadByte (nativestring, len) != 0)
-        checked {++len;}
-
-      unsafe { 
-        string s = new string ((sbyte*) nativestring, 0, len, _utf8);
-        len = s.Length;
-        while (len > 0 && s [len-1] == 0)
-          --len;
-        if (len == s.Length)
-          return s;
-        return s.Substring (0, len);
-      }
-    }
-
-
-    #endregion
-
-    #region DateTime Conversion Functions
-    /// <summary>
-    /// Converts a string into a DateTime, using the current DateTimeFormat specified for the connection when it was opened.
-    /// </summary>
-    /// <remarks>
-    /// Acceptable ISO8601 DateTime formats are:
-    ///   yyyy-MM-dd HH:mm:ss
-    ///   yyyyMMddHHmmss
-    ///   yyyyMMddTHHmmssfffffff
-    ///   yyyy-MM-dd
-    ///   yy-MM-dd
-    ///   yyyyMMdd
-    ///   HH:mm:ss
-    ///   THHmmss
-    /// </remarks>
-    /// <param name="dateText">The string containing either a Tick value or an ISO8601-format string</param>
-    /// <returns>A DateTime value</returns>
-    public DateTime ToDateTime(string dateText)
-    {
-      switch (_datetimeFormat)
-      {
-        case SqliteDateFormats.Ticks:
-          return new DateTime(Convert.ToInt64(dateText, CultureInfo.InvariantCulture));
-        default:
-          return DateTime.ParseExact(dateText, _datetimeFormats, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None);
-      }
-    }
-
-    /// <summary>
-    /// Converts a DateTime to a string value, using the current DateTimeFormat specified for the connection when it was opened.
-    /// </summary>
-    /// <param name="dateValue">The DateTime value to convert</param>
-    /// <returns>Either a string consisting of the tick count for DateTimeFormat.Ticks, or a date/time in ISO8601 format.</returns>
-    public string ToString(DateTime dateValue)
-    {
-      switch (_datetimeFormat)
-      {
-        case SqliteDateFormats.Ticks:
-          return dateValue.Ticks.ToString(CultureInfo.InvariantCulture);
-        default:
-          return dateValue.ToString(_datetimeFormats[0], CultureInfo.InvariantCulture);
-      }
-    }
-
-    /// <summary>
-    /// Internal function to convert a UTF-8 encoded IntPtr of the specified length to a DateTime.
-    /// </summary>
-    /// <remarks>
-    /// This is a convenience function, which first calls ToString() on the IntPtr to convert it to a string, then calls
-    /// ToDateTime() on the string to return a DateTime.
-    /// </remarks>
-    /// <param name="ptr">A pointer to the UTF-8 encoded string</param>
-    /// <param name="len">The length in bytes of the string</param>
-    /// <returns>The parsed DateTime value</returns>
-    internal DateTime ToDateTime(IntPtr ptr)
-    {
-      return ToDateTime(ToString(ptr));
-    }
-    #endregion
-
-    /// <summary>
-    /// Smart method of splitting a string.  Skips quoted elements, removes the quotes.
-    /// </summary>
-    /// <remarks>
-    /// This split function works somewhat like the String.Split() function in that it breaks apart a string into
-    /// pieces and returns the pieces as an array.  The primary differences are:
-    /// <list type="bullet">
-    /// <item><description>Only one character can be provided as a separator character</description></item>
-    /// <item><description>Quoted text inside the string is skipped over when searching for the separator, and the quotes are removed.</description></item>
-    /// </list>
-    /// Thus, if splitting the following string looking for a comma:<br/>
-    /// One,Two, "Three, Four", Five<br/>
-    /// <br/>
-    /// The resulting array would contain<br/>
-    /// [0] One<br/>
-    /// [1] Two<br/>
-    /// [2] Three, Four<br/>
-    /// [3] Five<br/>
-    /// <br/>
-    /// Note that the leading and trailing spaces were removed from each item during the split.
-    /// </remarks>
-    /// <param name="source">Source string to split apart</param>
-    /// <param name="separator">Separator character</param>
-    /// <returns>A string array of the split up elements</returns>
-    public static string[] Split(string source, char separator)
-    {
-      char[] toks = new char[2] { '\"', separator };
-      char[] quot = new char[1] { '\"' };
-      int n = 0;
-      List<string> ls = new List<string>();
-      string s;
-
-      while (source.Length > 0)
-      {
-        n = source.IndexOfAny(toks, n);
-        if (n == -1) break;
-        if (source[n] == toks[0])
-        {
-          source = source.Remove(n, 1);
-          n = source.IndexOfAny(quot, n);
-          if (n == -1)
-          {
-            source = "\"" + source;
-            break;
-          }
-          source = source.Remove(n, 1);
-        }
-        else
-        {
-          s = source.Substring(0, n).Trim();
-          source = source.Substring(n + 1).Trim();
-          if (s.Length > 0) ls.Add(s);
-          n = 0;
-        }
-      }
-      if (source.Length > 0) ls.Add(source);
-
-      string[] ar = new string[ls.Count];
-      ls.CopyTo(ar, 0);
-
-      return ar;
-    }
-
-    #region Type Conversions
-    /// <summary>
-    /// Determines the data type of a column in a statement
-    /// </summary>
-    /// <param name="stmt">The statement to retrieve information for</param>
-    /// <param name="i">The column to retrieve type information on</param>
-    /// <returns>Returns a SqliteType struct</returns>
-    internal static SqliteType ColumnToType(SqliteStatement stmt, int i)
-    {
-      SqliteType typ = new SqliteType ();
-
-      typ.Type = TypeNameToDbType(stmt._sql.ColumnType(stmt, i, out typ.Affinity));
-
-      return typ;
-    }
-
-    /// <summary>
-    /// Converts a SqliteType to a .NET Type object
-    /// </summary>
-    /// <param name="t">The SqliteType to convert</param>
-    /// <returns>Returns a .NET Type object</returns>
-    internal static Type SqliteTypeToType(SqliteType t)
-    {
-      if (t.Type != DbType.Object)
-        return SqliteConvert.DbTypeToType(t.Type);
-
-      return _typeaffinities[(int)t.Affinity];
-    }
-
-    static Type[] _typeaffinities = {
-      null,
-      typeof(Int64),
-      typeof(Double),
-      typeof(string),
-      typeof(byte[]),
-      typeof(DBNull),
-      null,
-      null,
-      null,
-      null,
-      typeof(DateTime),
-      null,
-    };
-
-    /// <summary>
-    /// For a given intrinsic type, return a DbType
-    /// </summary>
-    /// <param name="typ">The native type to convert</param>
-    /// <returns>The corresponding (closest match) DbType</returns>
-    internal static DbType TypeToDbType(Type typ)
-    {
-      TypeCode tc = Type.GetTypeCode(typ);
-      if (tc == TypeCode.Object)
-      {
-        if (typ == typeof(byte[])) return DbType.Binary;
-        if (typ == typeof(Guid)) return DbType.Guid;
-        return DbType.String;
-      }
-      return _typetodbtype[(int)tc];
-    }
-
-    private static DbType[] _typetodbtype = {
-      DbType.Object,
-      DbType.Binary,
-      DbType.Object,
-      DbType.Boolean,
-      DbType.SByte,
-      DbType.SByte,
-      DbType.Byte,
-      DbType.Int16, // 7
-      DbType.UInt16,
-      DbType.Int32,
-      DbType.UInt32,
-      DbType.Int64, // 11
-      DbType.UInt64,
-      DbType.Single,
-      DbType.Double,
-      DbType.Decimal,
-      DbType.DateTime,
-      DbType.Object,
-      DbType.String,
-    };
-
-    /// <summary>
-    /// Returns the ColumnSize for the given DbType
-    /// </summary>
-    /// <param name="typ">The DbType to get the size of</param>
-    /// <returns></returns>
-    internal static int DbTypeToColumnSize(DbType typ)
-    {
-      return _dbtypetocolumnsize[(int)typ];
-    }
-
-    private static int[] _dbtypetocolumnsize = {
-      2147483647,   // 0
-      2147483647,   // 1
-      1,     // 2
-      1,     // 3
-      8,  // 4
-      8, // 5
-      8, // 6
-      8,  // 7
-      8,   // 8
-      16,     // 9
-      2,
-      4,
-      8,
-      2147483647,
-      1,
-      4,
-      2147483647,
-      8,
-      2,
-      4,
-      8,
-      8,
-      2147483647,
-      2147483647,
-      2147483647,
-      2147483647,   // 25 (Xml)
-    };
-
-    /// <summary>
-    /// Convert a DbType to a Type
-    /// </summary>
-    /// <param name="typ">The DbType to convert from</param>
-    /// <returns>The closest-match .NET type</returns>
-    internal static Type DbTypeToType(DbType typ)
-    {
-      return _dbtypeToType[(int)typ];
-    }
-
-    private static Type[] _dbtypeToType = {
-      typeof(string),   // 0
-      typeof(byte[]),   // 1
-      typeof(byte),     // 2
-      typeof(bool),     // 3
-      typeof(decimal),  // 4
-      typeof(DateTime), // 5
-      typeof(DateTime), // 6
-      typeof(decimal),  // 7
-      typeof(double),   // 8
-      typeof(Guid),     // 9
-      typeof(Int16),
-      typeof(Int32),
-      typeof(Int64),
-      typeof(object),
-      typeof(sbyte),
-      typeof(float),
-      typeof(string),
-      typeof(DateTime),
-      typeof(UInt16),
-      typeof(UInt32),
-      typeof(UInt64),
-      typeof(double),
-      typeof(string),
-      typeof(string),
-      typeof(string),
-      typeof(string),   // 25 (Xml)
-    };
-
-    /// <summary>
-    /// For a given type, return the closest-match Sqlite TypeAffinity, which only understands a very limited subset of types.
-    /// </summary>
-    /// <param name="typ">The type to evaluate</param>
-    /// <returns>The Sqlite type affinity for that type.</returns>
-    internal static TypeAffinity TypeToAffinity(Type typ)
-    {
-      TypeCode tc = Type.GetTypeCode(typ);
-      if (tc == TypeCode.Object)
-      {
-        if (typ == typeof(byte[]) || typ == typeof(Guid))
-          return TypeAffinity.Blob;
-        else
-          return TypeAffinity.Text;
-      }
-      return _typecodeAffinities[(int)tc];
-    }
-
-    private static TypeAffinity[] _typecodeAffinities = {
-      TypeAffinity.Null,
-      TypeAffinity.Blob,
-      TypeAffinity.Null,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64, // 7
-      TypeAffinity.Int64,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64,
-      TypeAffinity.Int64, // 11
-      TypeAffinity.Int64,
-      TypeAffinity.Double,
-      TypeAffinity.Double,
-      TypeAffinity.Double,
-      TypeAffinity.DateTime,
-      TypeAffinity.Null,
-      TypeAffinity.Text,
-    };
-
-    /// <summary>
-    /// For a given type name, return a closest-match .NET type
-    /// </summary>
-    /// <param name="Name">The name of the type to match</param>
-    /// <returns>The .NET DBType the text evaluates to.</returns>
-    internal static DbType TypeNameToDbType(string Name)
-    {
-      if (String.IsNullOrEmpty(Name)) return DbType.Object;
-
-      DbType t;
-      if (_typeNames.TryGetValue(Name, out t)) {
-        return t;
-      } else if (_typeNames.TryGetValue (Name.ToUpperInvariant (), out t)) {
-        _typeNames[Name] = t;
-        return t;
-      }
-      return DbType.Object;
-    }
-    #endregion
-
-    // All the strings below must be uppercase
-    private static Dictionary<string, DbType> _typeNames = new Dictionary<string, DbType>() {
-      {"COUNTER", DbType.Int64},
-      {"AUTOINCREMENT", DbType.Int64},
-      {"IDENTITY", DbType.Int64},
-      {"LONGTEXT", DbType.String},
-      {"LONGCHAR", DbType.String},
-      {"LONGVARCHAR", DbType.String},
-      {"LONG", DbType.Int64},
-      {"TINYINT", DbType.Byte},
-      {"INTEGER", DbType.Int64},
-      {"INT", DbType.Int32},
-      {"VARCHAR", DbType.String},
-      {"NVARCHAR", DbType.String},
-      {"CHAR", DbType.String},
-      {"NCHAR", DbType.String},
-      {"TEXT", DbType.String},
-      {"NTEXT", DbType.String},
-      {"STRING", DbType.String},
-      {"DOUBLE", DbType.Double},
-      {"FLOAT", DbType.Double},
-      {"REAL", DbType.Single},
-      {"BIT", DbType.Boolean},
-      {"YESNO", DbType.Boolean},
-      {"LOGICAL", DbType.Boolean},
-      {"BOOL", DbType.Boolean},
-      {"NUMERIC", DbType.Decimal},
-      {"DECIMAL", DbType.Decimal},
-      {"MONEY", DbType.Decimal},
-      {"CURRENCY", DbType.Decimal},
-      {"TIME", DbType.DateTime},
-      {"DATE", DbType.DateTime},
-      {"SMALLDATE", DbType.DateTime},
-      {"BLOB", DbType.Binary},
-      {"BINARY", DbType.Binary},
-      {"VARBINARY", DbType.Binary},
-      {"IMAGE", DbType.Binary},
-      {"GENERAL", DbType.Binary},
-      {"OLEOBJECT", DbType.Binary},
-      {"GUID", DbType.Guid},
-      {"UNIQUEIDENTIFIER", DbType.Guid},
-      {"MEMO", DbType.String},
-      {"NOTE", DbType.String},
-      {"SMALLINT", DbType.Int16},
-      {"BIGINT", DbType.Int64},
-    };
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataAdapter.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataAdapter.cs
deleted file mode 100644
index 592f901..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataAdapter.cs
+++ /dev/null
@@ -1,192 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteDataAdapter.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.ComponentModel;
-
-  /// <summary>
-  /// Sqlite implementation of DbDataAdapter.
-  /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-  [DefaultEvent("RowUpdated")]
-  [ToolboxItem("Sqlite.Designer.SqliteDataAdapterToolboxItem, Sqlite.Designer, Version=1.0.31.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139")]
-  [Designer("Microsoft.VSDesigner.Data.VS.SqlDataAdapterDesigner, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-  public sealed class SqliteDataAdapter : DbDataAdapter
-  {
-    private static object _updatingEventPH = new object();
-    private static object _updatedEventPH = new object();
-
-    /// <overloads>
-    /// This class is just a shell around the DbDataAdapter.  Nothing from DbDataAdapter is overridden here, just a few constructors are defined.
-    /// </overloads>
-    /// <summary>
-    /// Default constructor.
-    /// </summary>
-    public SqliteDataAdapter()
-    {
-    }
-
-    /// <summary>
-    /// Constructs a data adapter using the specified select command.
-    /// </summary>
-    /// <param name="cmd">The select command to associate with the adapter.</param>
-    public SqliteDataAdapter(SqliteCommand cmd)
-    {
-      SelectCommand = cmd;
-    }
-
-    /// <summary>
-    /// Constructs a data adapter with the supplied select command text and associated with the specified connection.
-    /// </summary>
-    /// <param name="commandText">The select command text to associate with the data adapter.</param>
-    /// <param name="connection">The connection to associate with the select command.</param>
-    public SqliteDataAdapter(string commandText, SqliteConnection connection)
-    {
-      SelectCommand = new SqliteCommand(commandText, connection);
-    }
-
-    /// <summary>
-    /// Constructs a data adapter with the specified select command text, and using the specified database connection string.
-    /// </summary>
-    /// <param name="commandText">The select command text to use to construct a select command.</param>
-    /// <param name="connectionString">A connection string suitable for passing to a new SqliteConnection, which is associated with the select command.</param>
-    public SqliteDataAdapter(string commandText, string connectionString)
-    {
-      SqliteConnection cnn = new SqliteConnection(connectionString);
-      SelectCommand = new SqliteCommand(commandText, cnn);
-    }
-
-    /// <summary>
-    /// Row updating event handler
-    /// </summary>
-    public event EventHandler<RowUpdatingEventArgs> RowUpdating
-    {
-      add { base.Events.AddHandler(_updatingEventPH, value); }
-      remove { base.Events.RemoveHandler(_updatingEventPH, value); }
-    }
-
-    /// <summary>
-    /// Row updated event handler
-    /// </summary>
-    public event EventHandler<RowUpdatedEventArgs> RowUpdated
-    {
-      add { base.Events.AddHandler(_updatedEventPH, value); }
-      remove { base.Events.RemoveHandler(_updatedEventPH, value); }
-    }
-
-    /// <summary>
-    /// Raised by the underlying DbDataAdapter when a row is being updated
-    /// </summary>
-    /// <param name="value">The event's specifics</param>
-    protected override void OnRowUpdating(RowUpdatingEventArgs value)
-    {
-      EventHandler<RowUpdatingEventArgs> handler = base.Events[_updatingEventPH] as EventHandler<RowUpdatingEventArgs>;
-
-      if (handler != null)
-        handler(this, value);
-    }
-
-    /// <summary>
-    /// Raised by DbDataAdapter after a row is updated
-    /// </summary>
-    /// <param name="value">The event's specifics</param>
-    protected override void OnRowUpdated(RowUpdatedEventArgs value)
-    {
-      EventHandler<RowUpdatedEventArgs> handler = base.Events[_updatedEventPH] as EventHandler<RowUpdatedEventArgs>;
-
-      if (handler != null)
-        handler(this, value);
-    }
-
-    /// <summary>
-    /// Gets/sets the select command for this DataAdapter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((string)null), Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public new SqliteCommand SelectCommand
-    {
-      get { return (SqliteCommand)base.SelectCommand; }
-      set { base.SelectCommand = value; }
-    }
-
-    /// <summary>
-    /// Gets/sets the insert command for this DataAdapter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((string)null), Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public new SqliteCommand InsertCommand
-    {
-      get { return (SqliteCommand)base.InsertCommand; }
-      set { base.InsertCommand = value; }
-    }
-
-    /// <summary>
-    /// Gets/sets the update command for this DataAdapter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((string)null), Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public new SqliteCommand UpdateCommand
-    {
-      get { return (SqliteCommand)base.UpdateCommand; }
-      set { base.UpdateCommand = value; }
-    }
-
-    /// <summary>
-    /// Gets/sets the delete command for this DataAdapter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((string)null), Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
-#endif
-    public new SqliteCommand DeleteCommand
-    {
-      get { return (SqliteCommand)base.DeleteCommand; }
-      set { base.DeleteCommand = value; }
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataReader.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataReader.cs
deleted file mode 100644
index 3a38363..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteDataReader.cs
+++ /dev/null
@@ -1,1079 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteDataReader.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Collections;
-  using System.Collections.Generic;
-  using System.Globalization;
-  using System.Reflection;
-
-  /// <summary>
-  /// Sqlite implementation of DbDataReader.
-  /// </summary>
-  public class SqliteDataReader : DbDataReader
-  {
-    /// <summary>
-    /// Underlying command this reader is attached to
-    /// </summary>
-    private SqliteCommand   _command;
-    /// <summary>
-    /// Index of the current statement in the command being processed
-    /// </summary>
-    private int             _activeStatementIndex;
-    /// <summary>
-    /// Current statement being Read()
-    /// </summary>
-    private SqliteStatement _activeStatement;
-    /// <summary>
-    /// State of the current statement being processed.
-    /// -1 = First Step() executed, so the first Read() will be ignored
-    ///  0 = Actively reading
-    ///  1 = Finished reading
-    ///  2 = Non-row-returning statement, no records
-    /// </summary>
-    private int             _readingState;
-    /// <summary>
-    /// Number of records affected by the insert/update statements executed on the command
-    /// </summary>
-    private int             _rowsAffected;
-    /// <summary>
-    /// Count of fields (columns) in the row-returning statement currently being processed
-    /// </summary>
-    private int             _fieldCount;
-    /// <summary>
-    /// Datatypes of active fields (columns) in the current statement, used for type-restricting data
-    /// </summary>
-    private SqliteType[]    _fieldTypeArray;
-
-    /// <summary>
-    /// The behavior of the datareader
-    /// </summary>
-    private CommandBehavior _commandBehavior;
-
-    /// <summary>
-    /// If set, then dispose of the command object when the reader is finished
-    /// </summary>
-    internal bool           _disposeCommand;
-
-#if MONO_SUPPORT_KEYREADER
-    /// <summary>
-    /// An array of rowid's for the active statement if CommandBehavior.KeyInfo is specified
-    /// </summary>
-    private SqliteKeyReader _keyInfo;
-#endif
-
-    /// <summary>
-    /// Internal constructor, initializes the datareader and sets up to begin executing statements
-    /// </summary>
-    /// <param name="cmd">The SqliteCommand this data reader is for</param>
-    /// <param name="behave">The expected behavior of the data reader</param>
-    internal SqliteDataReader(SqliteCommand cmd, CommandBehavior behave)
-    {
-      _command = cmd;
-      _commandBehavior = behave;
-      _activeStatementIndex = -1;
-      _activeStatement = null;
-      _rowsAffected = -1;
-      _fieldCount = -1;
-
-      if (_command != null)
-        NextResult();
-    }
-
-    /// <summary>
-    /// Closes the datareader, potentially closing the connection as well if CommandBehavior.CloseConnection was specified.
-    /// </summary>
-    public override void Close()
-    {
-      if (_command != null)
-      {
-        while (NextResult())
-        {
-        }
-        _command.ClearDataReader();
-
-        // If the datareader's behavior includes closing the connection, then do so here.
-        if ((_commandBehavior & CommandBehavior.CloseConnection) != 0 && _command.Connection != null)
-          _command.Connection.Close();
-
-        if (_disposeCommand)
-          ((IDisposable)_command).Dispose();
-      }
-
-      _command = null;
-      _activeStatement = null;
-      _fieldTypeArray = null;
-
-#if MONO_SUPPORT_KEYREADER
-      if (_keyInfo != null)
-      {
-        _keyInfo.Dispose();
-        _keyInfo = null;
-      }
-#endif
-    }
-
-    /// <summary>
-    /// Disposes the datareader.  Calls Close() to ensure everything is cleaned up.
-    /// </summary>
-    protected override void Dispose(bool disposing)
-    {
-      base.Dispose(disposing);
-      GC.SuppressFinalize(this);
-    }
-
-    /// <summary>
-    /// Throw an error if the datareader is closed
-    /// </summary>
-    private void CheckClosed()
-    {
-      if (_command == null)
-        throw new InvalidOperationException("DataReader has been closed");
-    }
-
-    /// <summary>
-    /// Throw an error if a row is not loaded
-    /// </summary>
-    private void CheckValidRow()
-    {
-      if (_readingState != 0)
-        throw new InvalidOperationException("No current row");
-    }
-
-    /// <summary>
-    /// Enumerator support
-    /// </summary>
-    /// <returns>Returns a DbEnumerator object.</returns>
-    public override System.Collections.IEnumerator GetEnumerator()
-    {
-      return new DbEnumerator(this);
-    }
-
-    /// <summary>
-    /// Not implemented.  Returns 0
-    /// </summary>
-    public override int Depth
-    {
-      get
-      {
-        CheckClosed();
-        return 0;
-      }
-    }
-
-    /// <summary>
-    /// Returns the number of columns in the current resultset
-    /// </summary>
-    public override int FieldCount
-    {
-      get
-      {
-        CheckClosed();
-#if MONO_SUPPORT_KEYREADER
-        if (_keyInfo == null)
-          return _fieldCount;
-
-        return _fieldCount + _keyInfo.Count;
-#else
-	return _fieldCount;
-#endif
-      }
-    }
-
-    /// <summary>
-    /// Returns the number of visible fielsd in the current resultset
-    /// </summary>
-    public override int VisibleFieldCount
-    {
-      get
-      {
-        CheckClosed();
-        return _fieldCount;
-      }
-    }
-
-    /// <summary>
-    /// Sqlite is inherently un-typed.  All datatypes in Sqlite are natively strings.  The definition of the columns of a table
-    /// and the affinity of returned types are all we have to go on to type-restrict data in the reader.
-    ///
-    /// This function attempts to verify that the type of data being requested of a column matches the datatype of the column.  In
-    /// the case of columns that are not backed into a table definition, we attempt to match up the affinity of a column (int, double, string or blob)
-    /// to a set of known types that closely match that affinity.  It's not an exact science, but its the best we can do.
-    /// </summary>
-    /// <returns>
-    /// This function throws an InvalidTypeCast() exception if the requested type doesn't match the column's definition or affinity.
-    /// </returns>
-    /// <param name="i">The index of the column to type-check</param>
-    /// <param name="typ">The type we want to get out of the column</param>
-    private TypeAffinity VerifyType(int i, DbType typ)
-    {
-      CheckClosed();
-      CheckValidRow();
-      TypeAffinity affinity;
-
-      affinity = _activeStatement._sql.ColumnAffinity(_activeStatement, i);
-
-      switch (affinity)
-      {
-        case TypeAffinity.Int64:
-          if (typ == DbType.Int16) return affinity;
-          if (typ == DbType.Int32) return affinity;
-          if (typ == DbType.Int64) return affinity;
-          if (typ == DbType.Boolean) return affinity;
-          if (typ == DbType.Byte) return affinity;
-          if (typ == DbType.DateTime && _command.Connection._sql._datetimeFormat == SqliteDateFormats.Ticks) return affinity;
-          if (typ == DbType.Single) return affinity;
-          if (typ == DbType.Double) return affinity;
-          if (typ == DbType.Decimal) return affinity;
-          break;
-        case TypeAffinity.Double:
-          if (typ == DbType.Single) return affinity;
-          if (typ == DbType.Double) return affinity;
-          if (typ == DbType.Decimal) return affinity;
-          break;
-        case TypeAffinity.Text:
-          if (typ == DbType.SByte) return affinity;
-          if (typ == DbType.String) return affinity;
-          if (typ == DbType.SByte) return affinity;
-          if (typ == DbType.Guid) return affinity;
-          if (typ == DbType.DateTime) return affinity;
-          break;
-        case TypeAffinity.Blob:
-          if (typ == DbType.Guid) return affinity;
-          if (typ == DbType.String) return affinity;
-          if (typ == DbType.Binary) return affinity;
-          break;
-      }
-
-      throw new InvalidCastException();
-    }
-
-    /// <summary>
-    /// Retrieves the column as a boolean value
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>bool</returns>
-    public override bool GetBoolean(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetBoolean(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Boolean);
-      return Convert.ToBoolean(GetValue(i), CultureInfo.CurrentCulture);
-    }
-
-    /// <summary>
-    /// Retrieves the column as a single byte value
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>byte</returns>
-    public override byte GetByte(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetByte(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Byte);
-      return Convert.ToByte(_activeStatement._sql.GetInt32(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Retrieves a column as an array of bytes (blob)
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <param name="fieldOffset">The zero-based index of where to begin reading the data</param>
-    /// <param name="buffer">The buffer to write the bytes into</param>
-    /// <param name="bufferoffset">The zero-based index of where to begin writing into the array</param>
-    /// <param name="length">The number of bytes to retrieve</param>
-    /// <returns>The actual number of bytes written into the array</returns>
-    /// <remarks>
-    /// To determine the number of bytes in the column, pass a null value for the buffer.  The total length will be returned.
-    /// </remarks>
-    public override long GetBytes(int i, long fieldOffset, byte[] buffer, int bufferoffset, int length)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetBytes(i - VisibleFieldCount, fieldOffset, buffer, bufferoffset, length);
-#endif
-
-      VerifyType(i, DbType.Binary);
-      return _activeStatement._sql.GetBytes(_activeStatement, i, (int)fieldOffset, buffer, bufferoffset, length);
-    }
-
-    /// <summary>
-    /// Returns the column as a single character
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>char</returns>
-    public override char GetChar(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetChar(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.SByte);
-      return Convert.ToChar(_activeStatement._sql.GetInt32(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Retrieves a column as an array of chars (blob)
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <param name="fieldoffset">The zero-based index of where to begin reading the data</param>
-    /// <param name="buffer">The buffer to write the characters into</param>
-    /// <param name="bufferoffset">The zero-based index of where to begin writing into the array</param>
-    /// <param name="length">The number of bytes to retrieve</param>
-    /// <returns>The actual number of characters written into the array</returns>
-    /// <remarks>
-    /// To determine the number of characters in the column, pass a null value for the buffer.  The total length will be returned.
-    /// </remarks>
-    public override long GetChars(int i, long fieldoffset, char[] buffer, int bufferoffset, int length)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetChars(i - VisibleFieldCount, fieldoffset, buffer, bufferoffset, length);
-#endif
-
-      VerifyType(i, DbType.String);
-      return _activeStatement._sql.GetChars(_activeStatement, i, (int)fieldoffset, buffer, bufferoffset, length);
-    }
-
-    /// <summary>
-    /// Retrieves the name of the back-end datatype of the column
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>string</returns>
-    public override string GetDataTypeName(int i)
-    {
-      CheckClosed();
-
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetDataTypeName(i - VisibleFieldCount);
-#endif
-
-      SqliteType typ = GetSqliteType(i);
-      if (typ.Type == DbType.Object) return SqliteConvert.SqliteTypeToType(typ).Name;
-      return _activeStatement._sql.ColumnType(_activeStatement, i, out typ.Affinity);
-    }
-
-    /// <summary>
-    /// Retrieve the column as a date/time value
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>DateTime</returns>
-    public override DateTime GetDateTime(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetDateTime(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.DateTime);
-      return _activeStatement._sql.GetDateTime(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Retrieve the column as a decimal value
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>decimal</returns>
-    public override decimal GetDecimal(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetDecimal(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Decimal);
-      return Convert.ToDecimal(_activeStatement._sql.GetDouble(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Returns the column as a double
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>double</returns>
-    public override double GetDouble(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetDouble(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Double);
-      return _activeStatement._sql.GetDouble(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Returns the .NET type of a given column
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>Type</returns>
-    public override Type GetFieldType(int i)
-    {
-      CheckClosed();
-
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetFieldType(i - VisibleFieldCount);
-#endif
-
-      return SqliteConvert.SqliteTypeToType(GetSqliteType(i));
-    }
-
-    /// <summary>
-    /// Returns a column as a float value
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>float</returns>
-    public override float GetFloat(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetFloat(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Single);
-      return Convert.ToSingle(_activeStatement._sql.GetDouble(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Returns the column as a Guid
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>Guid</returns>
-    public override Guid GetGuid(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetGuid(i - VisibleFieldCount);
-#endif
-
-      TypeAffinity affinity = VerifyType(i, DbType.Guid);
-      if (affinity == TypeAffinity.Blob)
-      {
-        byte[] buffer = new byte[16];
-        _activeStatement._sql.GetBytes(_activeStatement, i, 0, buffer, 0, 16);
-        return new Guid(buffer);
-      }
-      else
-        return new Guid(_activeStatement._sql.GetText(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Returns the column as a short
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>Int16</returns>
-    public override Int16 GetInt16(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetInt16(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Int16);
-      return Convert.ToInt16(_activeStatement._sql.GetInt32(_activeStatement, i));
-    }
-
-    /// <summary>
-    /// Retrieves the column as an int
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>Int32</returns>
-    public override Int32 GetInt32(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetInt32(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Int32);
-      return _activeStatement._sql.GetInt32(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Retrieves the column as a long
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>Int64</returns>
-    public override Int64 GetInt64(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetInt64(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.Int64);
-      return _activeStatement._sql.GetInt64(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Retrieves the name of the column
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>string</returns>
-    public override string GetName(int i)
-    {
-      CheckClosed();
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetName(i - VisibleFieldCount);
-#endif
-
-      return _activeStatement._sql.ColumnName(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Retrieves the i of a column, given its name
-    /// </summary>
-    /// <param name="name">The name of the column to retrieve</param>
-    /// <returns>The int i of the column</returns>
-    public override int GetOrdinal(string name)
-    {
-      CheckClosed();
-      int r = _activeStatement._sql.ColumnIndex(_activeStatement, name);
-#if MONO_SUPPORT_KEYREADER
-      if (r == -1 && _keyInfo != null)
-      {
-        r = _keyInfo.GetOrdinal(name);
-        if (r > -1) r += VisibleFieldCount;
-      }
-#endif
-
-      return r;
-    }
-
-    /// <summary>
-    /// Schema information in Sqlite is difficult to map into .NET conventions, so a lot of work must be done
-    /// to gather the necessary information so it can be represented in an ADO.NET manner.
-    /// </summary>
-    /// <returns>Returns a DataTable containing the schema information for the active SELECT statement being processed.</returns>
-    public override DataTable GetSchemaTable()
-    {
-      return GetSchemaTable(true, false);
-    }
-
-    internal DataTable GetSchemaTable(bool wantUniqueInfo, bool wantDefaultValue)
-    {
-      CheckClosed();
-
-      DataTable tbl = new DataTable("SchemaTable");
-      DataTable tblIndexes = null;
-      DataTable tblIndexColumns;
-      DataRow row;
-      string temp;
-      string strCatalog = "";
-      string strTable = "";
-      string strColumn = "";
-
-      tbl.Locale = CultureInfo.InvariantCulture;
-      tbl.Columns.Add(SchemaTableColumn.ColumnName, typeof(String));
-      tbl.Columns.Add(SchemaTableColumn.ColumnOrdinal, typeof(int));
-      tbl.Columns.Add(SchemaTableColumn.ColumnSize, typeof(int));
-      tbl.Columns.Add(SchemaTableColumn.NumericPrecision, typeof(short));
-      tbl.Columns.Add(SchemaTableColumn.NumericScale, typeof(short));
-      tbl.Columns.Add(SchemaTableColumn.IsUnique, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableColumn.IsKey, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.BaseServerName, typeof(string));
-      tbl.Columns.Add(SchemaTableOptionalColumn.BaseCatalogName, typeof(String));
-      tbl.Columns.Add(SchemaTableColumn.BaseColumnName, typeof(String));
-      tbl.Columns.Add(SchemaTableColumn.BaseSchemaName, typeof(String));
-      tbl.Columns.Add(SchemaTableColumn.BaseTableName, typeof(String));
-      tbl.Columns.Add(SchemaTableColumn.DataType, typeof(Type));
-      tbl.Columns.Add(SchemaTableColumn.AllowDBNull, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableColumn.ProviderType, typeof(int));
-      tbl.Columns.Add(SchemaTableColumn.IsAliased, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableColumn.IsExpression, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.IsAutoIncrement, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.IsRowVersion, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.IsHidden, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableColumn.IsLong, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.IsReadOnly, typeof(Boolean));
-      tbl.Columns.Add(SchemaTableOptionalColumn.ProviderSpecificDataType, typeof(Type));
-      tbl.Columns.Add(SchemaTableOptionalColumn.DefaultValue, typeof(object));
-      tbl.Columns.Add("DataTypeName", typeof(string));
-
-      tbl.BeginLoadData();
-
-      for (int n = 0; n < _fieldCount; n++)
-      {
-        row = tbl.NewRow();
-
-        // Default settings for the column
-        row[SchemaTableColumn.ColumnName] = GetName(n);
-        row[SchemaTableColumn.ColumnOrdinal] = n;
-        row[SchemaTableColumn.ColumnSize] = SqliteConvert.DbTypeToColumnSize(GetSqliteType(n).Type);
-        row[SchemaTableColumn.NumericPrecision] = 255;
-        row[SchemaTableColumn.NumericScale] = 255;
-        row[SchemaTableColumn.ProviderType] = GetSqliteType(n).Type;
-        row[SchemaTableColumn.IsLong] = (GetSqliteType(n).Type == DbType.Binary);
-        row[SchemaTableColumn.AllowDBNull] = true;
-        row[SchemaTableOptionalColumn.IsReadOnly] = false;
-        row[SchemaTableOptionalColumn.IsRowVersion] = false;
-        row[SchemaTableColumn.IsUnique] = false;
-        row[SchemaTableColumn.IsKey] = false;
-        row[SchemaTableOptionalColumn.IsAutoIncrement] = false;
-        row[SchemaTableOptionalColumn.IsReadOnly] = false;
-        row[SchemaTableColumn.DataType] = GetFieldType(n);
-        row[SchemaTableOptionalColumn.IsHidden] = false;
-
-        strColumn = _command.Connection._sql.ColumnOriginalName(_activeStatement, n);
-        if (String.IsNullOrEmpty(strColumn) == false) row[SchemaTableColumn.BaseColumnName] = strColumn;
-
-        row[SchemaTableColumn.IsExpression] = String.IsNullOrEmpty(strColumn);
-        row[SchemaTableColumn.IsAliased] = (String.Compare(GetName(n), strColumn, true, CultureInfo.InvariantCulture) != 0);
-
-        temp = _command.Connection._sql.ColumnTableName(_activeStatement, n);
-        if (String.IsNullOrEmpty(temp) == false) row[SchemaTableColumn.BaseTableName] = temp;
-
-        temp = _command.Connection._sql.ColumnDatabaseName(_activeStatement, n);
-        if (String.IsNullOrEmpty(temp) == false) row[SchemaTableOptionalColumn.BaseCatalogName] = temp;
-
-        string dataType = null;
-        // If we have a table-bound column, extract the extra information from it
-        if (String.IsNullOrEmpty(strColumn) == false)
-        {
-          string collSeq;
-          bool bNotNull;
-          bool bPrimaryKey;
-          bool bAutoIncrement;
-          string[] arSize;
-
-          // Get the column meta data
-          _command.Connection._sql.ColumnMetaData(
-            (string)row[SchemaTableOptionalColumn.BaseCatalogName],
-            (string)row[SchemaTableColumn.BaseTableName],
-            strColumn,
-            out dataType, out collSeq, out bNotNull, out bPrimaryKey, out bAutoIncrement);
-
-          if (bNotNull || bPrimaryKey) row[SchemaTableColumn.AllowDBNull] = false;
-
-          row[SchemaTableColumn.IsKey] = bPrimaryKey;
-          row[SchemaTableOptionalColumn.IsAutoIncrement] = bAutoIncrement;
-
-          // For types like varchar(50) and such, extract the size
-          arSize = dataType.Split('(');
-          if (arSize.Length > 1)
-          {
-            dataType = arSize[0];
-            arSize = arSize[1].Split(')');
-            if (arSize.Length > 1)
-            {
-              arSize = arSize[0].Split(',', '.');
-              if (GetSqliteType(n).Type == DbType.String || GetSqliteType(n).Type == DbType.Binary)
-              {
-                row[SchemaTableColumn.ColumnSize] = Convert.ToInt32(arSize[0], CultureInfo.InvariantCulture);
-              }
-              else
-              {
-                row[SchemaTableColumn.NumericPrecision] = Convert.ToInt32(arSize[0], CultureInfo.InvariantCulture);
-                if (arSize.Length > 1)
-                  row[SchemaTableColumn.NumericScale] = Convert.ToInt32(arSize[1], CultureInfo.InvariantCulture);
-              }
-            }
-          }
-
-          if (wantDefaultValue)
-          {
-            // Determine the default value for the column, which sucks because we have to query the schema for each column
-            using (SqliteCommand cmdTable = new SqliteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].TABLE_INFO([{1}])",
-              row[SchemaTableOptionalColumn.BaseCatalogName],
-              row[SchemaTableColumn.BaseTableName]
-              ), _command.Connection))
-            using (DbDataReader rdTable = cmdTable.ExecuteReader())
-            {
-              // Find the matching column
-              while (rdTable.Read())
-              {
-                if (String.Compare((string)row[SchemaTableColumn.BaseColumnName], rdTable.GetString(1), true, CultureInfo.InvariantCulture) == 0)
-                {
-                  if (rdTable.IsDBNull(4) == false)
-                    row[SchemaTableOptionalColumn.DefaultValue] = rdTable[4];
-
-                  break;
-                }
-              }
-            }
-          }
-
-          // Determine IsUnique properly, which is a pain in the butt!
-          if (wantUniqueInfo)
-          {
-            if ((string)row[SchemaTableOptionalColumn.BaseCatalogName] != strCatalog
-              || (string)row[SchemaTableColumn.BaseTableName] != strTable)
-            {
-              strCatalog = (string)row[SchemaTableOptionalColumn.BaseCatalogName];
-              strTable = (string)row[SchemaTableColumn.BaseTableName];
-
-              tblIndexes = _command.Connection.GetSchema("Indexes", new string[] {
-                (string)row[SchemaTableOptionalColumn.BaseCatalogName],
-                null,
-                (string)row[SchemaTableColumn.BaseTableName],
-                null });
-            }
-
-            foreach (DataRow rowIndexes in tblIndexes.Rows)
-            {
-              tblIndexColumns = _command.Connection.GetSchema("IndexColumns", new string[] {
-                (string)row[SchemaTableOptionalColumn.BaseCatalogName],
-                null,
-                (string)row[SchemaTableColumn.BaseTableName],
-                (string)rowIndexes["INDEX_NAME"],
-                null
-                });
-              foreach (DataRow rowColumnIndex in tblIndexColumns.Rows)
-              {
-                if (String.Compare((string)rowColumnIndex["COLUMN_NAME"], strColumn, true, CultureInfo.InvariantCulture) == 0)
-                {
-                  if (tblIndexColumns.Rows.Count == 1 && (bool)row[SchemaTableColumn.AllowDBNull] == false)
-                    row[SchemaTableColumn.IsUnique] = rowIndexes["UNIQUE"];
-
-                  break;
-                }
-              }
-            }
-          }
-        }
-
-        if (String.IsNullOrEmpty(dataType))
-        {
-          TypeAffinity affin;
-          dataType = _activeStatement._sql.ColumnType(_activeStatement, n, out affin);
-        }
-
-        if (String.IsNullOrEmpty(dataType) == false)
-          row["DataTypeName"] = dataType;
-
-        tbl.Rows.Add(row);
-      }
-
-#if MONO_SUPPORT_KEYREADER
-      if (_keyInfo != null)
-        _keyInfo.AppendSchemaTable(tbl);
-#endif
-
-      tbl.AcceptChanges();
-      tbl.EndLoadData();
-
-      return tbl;
-    }
-
-    /// <summary>
-    /// Retrieves the column as a string
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>string</returns>
-    public override string GetString(int i)
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetString(i - VisibleFieldCount);
-#endif
-
-      VerifyType(i, DbType.String);
-      return _activeStatement._sql.GetText(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Retrieves the column as an object corresponding to the underlying datatype of the column
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>object</returns>
-    public override object GetValue(int i)
-    {
-      CheckClosed();
-
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.GetValue(i - VisibleFieldCount);
-#endif
-      SqliteType typ = GetSqliteType(i);
-      typ.Affinity = _activeStatement._sql.ColumnAffinity(_activeStatement, i);
-      return _activeStatement._sql.GetValue(_activeStatement, i, typ);
-    }
-
-    /// <summary>
-    /// Retreives the values of multiple columns, up to the size of the supplied array
-    /// </summary>
-    /// <param name="values">The array to fill with values from the columns in the current resultset</param>
-    /// <returns>The number of columns retrieved</returns>
-    public override int GetValues(object[] values)
-    {
-      int nMax = FieldCount;
-      if (values.Length < nMax) nMax = values.Length;
-
-      for (int n = 0; n < nMax; n++)
-      {
-        values[n] = GetValue(n);
-      }
-
-      return nMax;
-    }
-
-    /// <summary>
-    /// Returns True if the resultset has rows that can be fetched
-    /// </summary>
-    public override bool HasRows
-    {
-      get
-      {
-        CheckClosed();
-        return (_readingState != 1);
-      }
-    }
-
-    /// <summary>
-    /// Returns True if the data reader is closed
-    /// </summary>
-    public override bool IsClosed
-    {
-      get { return (_command == null); }
-    }
-
-    /// <summary>
-    /// Returns True if the specified column is null
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>True or False</returns>
-    public override bool IsDBNull(int i)
-    {
-      CheckClosed();
-#if MONO_SUPPORT_KEYREADER
-      if (i >= VisibleFieldCount && _keyInfo != null)
-        return _keyInfo.IsDBNull(i - VisibleFieldCount);
-#endif
-      return _activeStatement._sql.IsNull(_activeStatement, i);
-    }
-
-    /// <summary>
-    /// Moves to the next resultset in multiple row-returning SQL command.
-    /// </summary>
-    /// <returns>True if the command was successful and a new resultset is available, False otherwise.</returns>
-    public override bool NextResult()
-    {
-      CheckClosed();
-
-      SqliteStatement stmt = null;
-      int fieldCount;
-
-      while (true)
-      {
-        if (_activeStatement != null && stmt == null)
-        {
-          // Reset the previously-executed statement
-          _activeStatement._sql.Reset(_activeStatement);
-
-          // If we're only supposed to return a single rowset, step through all remaining statements once until
-          // they are all done and return false to indicate no more resultsets exist.
-          if ((_commandBehavior & CommandBehavior.SingleResult) != 0)
-          {
-            for (; ; )
-            {
-              stmt = _command.GetStatement(_activeStatementIndex + 1);
-              if (stmt == null) break;
-              _activeStatementIndex++;
-
-              stmt._sql.Step(stmt);
-              if (stmt._sql.ColumnCount(stmt) == 0)
-              {
-                if (_rowsAffected == -1) _rowsAffected = 0;
-                _rowsAffected += stmt._sql.Changes;
-              }
-              stmt._sql.Reset(stmt); // Gotta reset after every step to release any locks and such!
-            }
-            return false;
-          }
-        }
-
-        // Get the next statement to execute
-        stmt = _command.GetStatement(_activeStatementIndex + 1);
-
-        // If we've reached the end of the statements, return false, no more resultsets
-        if (stmt == null)
-          return false;
-
-        // If we were on a current resultset, set the state to "done reading" for it
-        if (_readingState < 1)
-          _readingState = 1;
-
-        _activeStatementIndex++;
-
-        fieldCount = stmt._sql.ColumnCount(stmt);
-
-        // If the statement is not a select statement or we're not retrieving schema only, then perform the initial step
-        if ((_commandBehavior & CommandBehavior.SchemaOnly) == 0 || fieldCount == 0)
-        {
-          if (stmt._sql.Step(stmt))
-          {
-            _readingState = -1;
-          }
-          else if (fieldCount == 0) // No rows returned, if fieldCount is zero, skip to the next statement
-          {
-            if (_rowsAffected == -1) _rowsAffected = 0;
-            _rowsAffected += stmt._sql.Changes;
-            stmt._sql.Reset(stmt);
-            continue; // Skip this command and move to the next, it was not a row-returning resultset
-          }
-          else // No rows, fieldCount is non-zero so stop here
-          {
-            _readingState = 1; // This command returned columns but no rows, so return true, but HasRows = false and Read() returns false
-          }
-        }
-
-        // Ahh, we found a row-returning resultset eligible to be returned!
-        _activeStatement = stmt;
-        _fieldCount = fieldCount;
-        _fieldTypeArray = null;
-
-        if ((_commandBehavior & CommandBehavior.KeyInfo) != 0)
-          LoadKeyInfo();
-
-        return true;
-      }
-    }
-
-    /// <summary>
-    /// Retrieves the SqliteType for a given column, and caches it to avoid repetetive interop calls.
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>A SqliteType structure</returns>
-    private SqliteType GetSqliteType(int i)
-    {
-      SqliteType typ;
-
-      // Initialize the field types array if not already initialized
-      if (_fieldTypeArray == null) _fieldTypeArray = new SqliteType[VisibleFieldCount];
-
-      // Initialize this column's field type instance
-      if (_fieldTypeArray[i] == null) _fieldTypeArray[i] = new SqliteType();
-
-      typ = _fieldTypeArray[i];
-
-      // If not initialized, then fetch the declared column datatype and attempt to convert it
-      // to a known DbType.
-      if (typ.Affinity == TypeAffinity.Uninitialized)
-        typ.Type = SqliteConvert.TypeNameToDbType(_activeStatement._sql.ColumnType(_activeStatement, i, out typ.Affinity));
-      else
-        typ.Affinity = _activeStatement._sql.ColumnAffinity(_activeStatement, i);
-
-      return typ;
-    }
-
-    /// <summary>
-    /// Reads the next row from the resultset
-    /// </summary>
-    /// <returns>True if a new row was successfully loaded and is ready for processing</returns>
-    public override bool Read()
-    {
-      CheckClosed();
-
-      if (_readingState == -1) // First step was already done at the NextResult() level, so don't step again, just return true.
-      {
-        _readingState = 0;
-        return true;
-      }
-      else if (_readingState == 0) // Actively reading rows
-      {
-        if (_activeStatement._sql.Step(_activeStatement) == true)
-        {
-#if MONO_SUPPORT_KEYREADER
-          if (_keyInfo != null)
-            _keyInfo.Reset();
-#endif
-	
-          return true;
-        }
-
-        _readingState = 1; // Finished reading rows
-      }
-
-      return false;
-    }
-
-    /// <summary>
-    /// Retrieve the count of records affected by an update/insert command.  Only valid once the data reader is closed!
-    /// </summary>
-    public override int RecordsAffected
-    {
-      get { return _rowsAffected; }
-    }
-
-    /// <summary>
-    /// Indexer to retrieve data from a column given its name
-    /// </summary>
-    /// <param name="name">The name of the column to retrieve data for</param>
-    /// <returns>The value contained in the column</returns>
-    public override object this[string name]
-    {
-      get { return GetValue(GetOrdinal(name)); }
-    }
-
-    /// <summary>
-    /// Indexer to retrieve data from a column given its i
-    /// </summary>
-    /// <param name="i">The index of the column to retrieve</param>
-    /// <returns>The value contained in the column</returns>
-    public override object this[int i]
-    {
-      get { return GetValue(i); }
-    }
-
-    private void LoadKeyInfo()
-    {
-#if MONO_SUPPORT_KEYREADER
-      if (_keyInfo != null)
-        _keyInfo.Dispose();
-
-      _keyInfo = new SqliteKeyReader(_command.Connection, this, _activeStatement);
-#endif
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteEnlistment.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteEnlistment.cs
deleted file mode 100644
index e2caed7..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteEnlistment.cs
+++ /dev/null
@@ -1,127 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteEnlistment.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/*******************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-#if !PLATFORM_COMPACTFRAMEWORK
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Transactions;
-
-  internal class SqliteEnlistment : IEnlistmentNotification
-  {
-    internal SqliteTransaction _transaction;
-    internal Transaction _scope;
-    internal bool _disposeConnection;
-
-    internal SqliteEnlistment(SqliteConnection cnn, Transaction scope)
-    {
-      _transaction = cnn.BeginTransaction();
-      _scope = scope;
-      _disposeConnection = false;
-
-      _scope.EnlistVolatile(this, System.Transactions.EnlistmentOptions.None);
-    }
-
-    private void Cleanup(SqliteConnection cnn)
-    {
-      if (_disposeConnection)
-        cnn.Dispose();
-
-      _transaction = null;
-      _scope = null;
-    }
-
-    #region IEnlistmentNotification Members
-
-    public void Commit(Enlistment enlistment)
-    {
-      SqliteConnection cnn = _transaction.Connection;
-      cnn._enlistment = null;
-
-      try
-      {
-        _transaction.IsValid(true);
-        _transaction.Connection._transactionLevel = 1;
-        _transaction.Commit();
-
-        enlistment.Done();
-      }
-      finally
-      {
-        Cleanup(cnn);
-      }
-    }
-
-    public void InDoubt(Enlistment enlistment)
-    {
-      enlistment.Done();
-    }
-
-    public void Prepare(PreparingEnlistment preparingEnlistment)
-    {
-      if (_transaction.IsValid(false) == false)
-        preparingEnlistment.ForceRollback();
-      else
-        preparingEnlistment.Prepared();
-    }
-
-    public void Rollback(Enlistment enlistment)
-    {
-      SqliteConnection cnn = _transaction.Connection;
-      cnn._enlistment = null;
-
-      try
-      {
-        _transaction.Rollback();
-        enlistment.Done();
-      }
-      finally
-      {
-        Cleanup(cnn);
-      }
-    }
-
-    #endregion
-  }
-}
-#endif // !PLATFORM_COMPACT_FRAMEWORK
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteException.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteException.cs
deleted file mode 100644
index 820dcce..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteException.cs
+++ /dev/null
@@ -1,293 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteException.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Collections.Generic;
-  using System.Text;
-  using System.Data.Common;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-  using System.Runtime.Serialization;
-#endif
-
-  /// <summary>
-  /// Sqlite exception class.
-  /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-  [Serializable]
-  public class SqliteException : DbException
-#else
-  public class SqliteException : Exception
-#endif
-  {
-    private SqliteErrorCode _errorCode;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-    private SqliteException(SerializationInfo info, StreamingContext context)
-      : base(info, context)
-    {
-    }
-#endif
-
-    /// <summary>
-    /// Public constructor for generating a Sqlite error given the base error code
-    /// </summary>
-    /// <param name="errorCode">The Sqlite error code to report</param>
-    /// <param name="extendedInformation">Extra text to go along with the error message text</param>
-    public SqliteException(int errorCode, string extendedInformation)
-      : base(GetStockErrorMessage(errorCode, extendedInformation))
-    {
-      _errorCode = (SqliteErrorCode)errorCode;
-    }
-
-    /// <summary>
-    /// Various public constructors that just pass along to the base Exception
-    /// </summary>
-    /// <param name="message">Passed verbatim to Exception</param>
-    public SqliteException(string message)
-      : base(message)
-    {
-    }
-
-    /// <summary>
-    /// Various public constructors that just pass along to the base Exception
-    /// </summary>
-    public SqliteException()
-    {
-    }
-
-    /// <summary>
-    /// Various public constructors that just pass along to the base Exception
-    /// <param name="message">Passed to Exception</param>
-    /// <param name="innerException">Passed to Exception</param>
-    /// </summary>
-    public SqliteException(string message, Exception innerException)
-      : base(message, innerException)
-    {
-    }
-
-    /// <summary>
-    /// Retrieves the underlying Sqlite error code for this exception
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    public new SqliteErrorCode ErrorCode
-#else
-    public SqliteErrorCode ErrorCode
-#endif
-    {
-      get { return _errorCode; }
-    }
-
-    /// <summary>
-    /// Initializes the exception class with the Sqlite error code.
-    /// </summary>
-    /// <param name="errorCode">The Sqlite error code</param>
-    /// <param name="errorMessage">A detailed error message</param>
-    /// <returns>An error message string</returns>
-    private static string GetStockErrorMessage(int errorCode, string errorMessage)
-    {
-      if (errorMessage == null) errorMessage = "";
-
-      if (errorMessage.Length > 0)
-        errorMessage = "\r\n" + errorMessage;
-
-      if (errorCode < 0 || errorCode >= _errorMessages.Length)
-        errorCode = 1;
-
-      return _errorMessages[errorCode] + errorMessage;
-    }
-
-    private static string[] _errorMessages = {
-      "Sqlite OK",
-      "Sqlite error",
-      "An internal logic error in Sqlite",
-      "Access permission denied",
-      "Callback routine requested an abort",
-      "The database file is locked",
-      "A table in the database is locked",
-      "malloc() failed",
-      "Attempt to write a read-only database",
-      "Operation terminated by sqlite3_interrupt()",
-      "Some kind of disk I/O error occurred",
-      "The database disk image is malformed",
-      "Table or record not found",
-      "Insertion failed because the database is full",
-      "Unable to open the database file",
-      "Database lock protocol error",
-      "Database is empty",
-      "The database schema changed",
-      "Too much data for one row of a table",
-      "Abort due to constraint violation",
-      "Data type mismatch",
-      "Library used incorrectly",
-      "Uses OS features not supported on host",
-      "Authorization denied",
-      "Auxiliary database format error",
-      "2nd parameter to sqlite3_bind() out of range",
-      "File opened that is not a database file",
-    };
-  }
-
-  /// <summary>
-  /// Sqlite error codes
-  /// </summary>
-  public enum SqliteErrorCode
-  {
-    /// <summary>
-    /// Success
-    /// </summary>
-    Ok = 0,
-    /// <summary>
-    /// SQL error or missing database
-    /// </summary>
-    Error,
-    /// <summary>
-    /// Internal logic error in Sqlite
-    /// </summary>
-    Internal,
-    /// <summary>
-    /// Access permission denied
-    /// </summary>
-    Perm,
-    /// <summary>
-    /// Callback routine requested an abort
-    /// </summary>
-    Abort,
-    /// <summary>
-    /// The database file is locked
-    /// </summary>
-    Busy,
-    /// <summary>
-    /// A table in the database is locked
-    /// </summary>
-    Locked,
-    /// <summary>
-    /// malloc() failed
-    /// </summary>
-    NoMem,
-    /// <summary>
-    /// Attempt to write a read-only database
-    /// </summary>
-    ReadOnly,
-    /// <summary>
-    /// Operation terminated by sqlite3_interrupt()
-    /// </summary>
-    Interrupt,
-    /// <summary>
-    /// Some kind of disk I/O error occurred
-    /// </summary>
-    IOErr,
-    /// <summary>
-    /// The database disk image is malformed
-    /// </summary>
-    Corrupt,
-    /// <summary>
-    /// Table or record not found
-    /// </summary>
-    NotFound,
-    /// <summary>
-    /// Insertion failed because database is full
-    /// </summary>
-    Full,
-    /// <summary>
-    /// Unable to open the database file
-    /// </summary>
-    CantOpen,
-    /// <summary>
-    /// Database lock protocol error
-    /// </summary>
-    Protocol,
-    /// <summary>
-    /// Database is empty
-    /// </summary>
-    Empty,
-    /// <summary>
-    /// The database schema changed
-    /// </summary>
-    Schema,
-    /// <summary>
-    /// Too much data for one row of a table
-    /// </summary>
-    TooBig,
-    /// <summary>
-    /// Abort due to constraint violation
-    /// </summary>
-    Constraint,
-    /// <summary>
-    /// Data type mismatch
-    /// </summary>
-    Mismatch,
-    /// <summary>
-    /// Library used incorrectly
-    /// </summary>
-    Misuse,
-    /// <summary>
-    /// Uses OS features not supported on host
-    /// </summary>
-    NOLFS,
-    /// <summary>
-    /// Authorization denied
-    /// </summary>
-    Auth,
-    /// <summary>
-    /// Auxiliary database format error
-    /// </summary>
-    Format,
-    /// <summary>
-    /// 2nd parameter to sqlite3_bind out of range
-    /// </summary>
-    Range,
-    /// <summary>
-    /// File opened that is not a database file
-    /// </summary>
-    NotADatabase,
-    /// <summary>
-    /// sqlite3_step() has another row ready
-    /// </summary>
-    Row = 100,
-    /// <summary>
-    /// sqlite3_step() has finished executing
-    /// </summary>
-    Done = 101,
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFactory.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFactory.cs
deleted file mode 100644
index a9a5bce..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFactory.cs
+++ /dev/null
@@ -1,113 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteFactory.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data.Common;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-  /// <summary>
-  /// Sqlite implementation of DbProviderFactory.
-  /// </summary>
-  public sealed class SqliteFactory : DbProviderFactory
-  {
-    /// <summary>
-    /// Static instance member which returns an instanced SqliteFactory class.
-    /// </summary>
-    public static readonly SqliteFactory Instance = new SqliteFactory();
-
-    /// <summary>
-    /// Returns a new SqliteCommand object.
-    /// </summary>
-    /// <returns>A SqliteCommand object.</returns>
-    public override DbCommand CreateCommand()
-    {
-      return new SqliteCommand();
-    }
-
-    /// <summary>
-    /// Returns a new SqliteCommandBuilder object.
-    /// </summary>
-    /// <returns>A SqliteCommandBuilder object.</returns>
-    public override DbCommandBuilder CreateCommandBuilder()
-    {
-      return new SqliteCommandBuilder();
-    }
-
-    /// <summary>
-    /// Creates a new SqliteConnection.
-    /// </summary>
-    /// <returns>A SqliteConnection object.</returns>
-    public override DbConnection CreateConnection()
-    {
-      return new SqliteConnection();
-    }
-
-    /// <summary>
-    /// Creates a new SqliteConnectionStringBuilder.
-    /// </summary>
-    /// <returns>A SqliteConnectionStringBuilder object.</returns>
-    public override DbConnectionStringBuilder CreateConnectionStringBuilder()
-    {
-      return new SqliteConnectionStringBuilder();
-    }
-
-    /// <summary>
-    /// Creates a new SqliteDataAdapter.
-    /// </summary>
-    /// <returns>A SqliteDataAdapter object.</returns>
-    public override DbDataAdapter CreateDataAdapter()
-    {
-      return new SqliteDataAdapter();
-    }
-
-    /// <summary>
-    /// Creates a new SqliteParameter.
-    /// </summary>
-    /// <returns>A SqliteParameter object.</returns>
-    public override DbParameter CreateParameter()
-    {
-      return new SqliteParameter();
-    }
-  }
-#endif
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunction.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunction.cs
deleted file mode 100644
index 7f0a38b..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunction.cs
+++ /dev/null
@@ -1,557 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteFunction.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Collections;
-  using System.Collections.Generic;
-  using System.Runtime.InteropServices;
-  using System.Globalization;
-
-  /// <summary>
-  /// The type of user-defined function to declare
-  /// </summary>
-  public enum FunctionType
-  {
-    /// <summary>
-    /// Scalar functions are designed to be called and return a result immediately.  Examples include ABS(), Upper(), Lower(), etc.
-    /// </summary>
-    Scalar = 0,
-    /// <summary>
-    /// Aggregate functions are designed to accumulate data until the end of a call and then return a result gleaned from the accumulated data.
-    /// Examples include SUM(), COUNT(), AVG(), etc.
-    /// </summary>
-    Aggregate = 1,
-    /// <summary>
-    /// Collation sequences are used to sort textual data in a custom manner, and appear in an ORDER BY clause.  Typically text in an ORDER BY is
-    /// sorted using a straight case-insensitive comparison function.  Custom collating sequences can be used to alter the behavior of text sorting
-    /// in a user-defined manner.
-    /// </summary>
-    Collation = 2,
-  }
-
-  /// <summary>
-  /// An internal callback delegate declaration.
-  /// </summary>
-  /// <param name="context">Raw context pointer for the user function</param>
-  /// <param name="nArgs">Count of arguments to the function</param>
-  /// <param name="argsptr">A pointer to the array of argument pointers</param>
-  internal delegate void SqliteCallback(IntPtr context, int nArgs, IntPtr argsptr);
-  /// <summary>
-  /// An internal callback delegate declaration.
-  /// </summary>
-  /// <param name="context">Raw context pointer for the user function</param>
-  internal delegate void SqliteFinalCallback(IntPtr context);
-  /// <summary>
-  /// Internal callback delegate for implementing collation sequences
-  /// </summary>
-  /// <param name="len1">Length of the string pv1</param>
-  /// <param name="pv1">Pointer to the first string to compare</param>
-  /// <param name="len2">Length of the string pv2</param>
-  /// <param name="pv2">Pointer to the second string to compare</param>
-  /// <returns>Returns -1 if the first string is less than the second.  0 if they are equal, or 1 if the first string is greater
-  /// than the second.</returns>
-  internal delegate int SqliteCollation(int len1, IntPtr pv1, int len2, IntPtr pv2);
-
-  /// <summary>
-  /// This abstract class is designed to handle user-defined functions easily.  An instance of the derived class is made for each
-  /// connection to the database.
-  /// </summary>
-  /// <remarks>
-  /// Although there is one instance of a class derived from SqliteFunction per database connection, the derived class has no access
-  /// to the underlying connection.  This is necessary to deter implementers from thinking it would be a good idea to make database
-  /// calls during processing.
-  ///
-  /// It is important to distinguish between a per-connection instance, and a per-SQL statement context.  One instance of this class
-  /// services all SQL statements being stepped through on that connection, and there can be many.  One should never store per-statement
-  /// information in member variables of user-defined function classes.
-  ///
-  /// For aggregate functions, always create and store your per-statement data in the contextData object on the 1st step.  This data will
-  /// be automatically freed for you (and Dispose() called if the item supports IDisposable) when the statement completes.
-  /// </remarks>
-  public abstract class SqliteFunction : IDisposable
-  {
-    /// <summary>
-    /// The base connection this function is attached to
-    /// </summary>
-    private SqliteBase              _base;
-    /// <summary>
-    /// Internal array used to keep track of aggregate function context data
-    /// </summary>
-    private Dictionary<long, object> _contextDataList;
-
-    /// <summary>
-    /// Holds a reference to the callback function for user functions
-    /// </summary>
-    private SqliteCallback  _InvokeFunc;
-    /// <summary>
-    /// Holds a reference to the callbakc function for stepping in an aggregate function
-    /// </summary>
-    private SqliteCallback  _StepFunc;
-    /// <summary>
-    /// Holds a reference to the callback function for finalizing an aggregate function
-    /// </summary>
-    private SqliteFinalCallback  _FinalFunc;
-    /// <summary>
-    /// Holds a reference to the callback function for collation sequences
-    /// </summary>
-    private SqliteCollation _CompareFunc;
-
-    /// <summary>
-    /// This static list contains all the user-defined functions declared using the proper attributes.
-    /// </summary>
-    private static List<SqliteFunctionAttribute> _registeredFunctions = new List<SqliteFunctionAttribute>();
-
-    /// <summary>
-    /// Internal constructor, initializes the function's internal variables.
-    /// </summary>
-    protected SqliteFunction()
-    {
-      _contextDataList = new Dictionary<long, object>();
-    }
-
-    /// <summary>
-    /// Returns a reference to the underlying connection's SqliteConvert class, which can be used to convert
-    /// strings and DateTime's into the current connection's encoding schema.
-    /// </summary>
-    public SqliteConvert SqliteConvert
-    {
-      get
-      {
-        return _base;
-      }
-    }
-
-    /// <summary>
-    /// Scalar functions override this method to do their magic.
-    /// </summary>
-    /// <remarks>
-    /// Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
-    /// to force them into a certain type.  Therefore the only types you will ever see as parameters are
-    /// DBNull.Value, Int64, Double, String or byte[] array.
-    /// </remarks>
-    /// <param name="args">The arguments for the command to process</param>
-    /// <returns>You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
-    /// you may return an Exception-derived class if you wish to return an error to Sqlite.  Do not actually throw the error,
-    /// just return it!</returns>
-    public virtual object Invoke(object[] args)
-    {
-      return null;
-    }
-
-    /// <summary>
-    /// Aggregate functions override this method to do their magic.
-    /// </summary>
-    /// <remarks>
-    /// Typically you'll be updating whatever you've placed in the contextData field and returning as quickly as possible.
-    /// </remarks>
-    /// <param name="args">The arguments for the command to process</param>
-    /// <param name="stepNumber">The 1-based step number.  This is incrememted each time the step method is called.</param>
-    /// <param name="contextData">A placeholder for implementers to store contextual data pertaining to the current context.</param>
-    public virtual void Step(object[] args, int stepNumber, ref object contextData)
-    {
-    }
-
-    /// <summary>
-    /// Aggregate functions override this method to finish their aggregate processing.
-    /// </summary>
-    /// <remarks>
-    /// If you implemented your aggregate function properly,
-    /// you've been recording and keeping track of your data in the contextData object provided, and now at this stage you should have
-    /// all the information you need in there to figure out what to return.
-    /// NOTE:  It is possible to arrive here without receiving a previous call to Step(), in which case the contextData will
-    /// be null.  This can happen when no rows were returned.  You can either return null, or 0 or some other custom return value
-    /// if that is the case.
-    /// </remarks>
-    /// <param name="contextData">Your own assigned contextData, provided for you so you can return your final results.</param>
-    /// <returns>You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
-    /// you may return an Exception-derived class if you wish to return an error to Sqlite.  Do not actually throw the error,
-    /// just return it!
-    /// </returns>
-    public virtual object Final(object contextData)
-    {
-      return null;
-    }
-
-    /// <summary>
-    /// User-defined collation sequences override this method to provide a custom string sorting algorithm.
-    /// </summary>
-    /// <param name="param1">The first string to compare</param>
-    /// <param name="param2">The second strnig to compare</param>
-    /// <returns>1 if param1 is greater than param2, 0 if they are equal, or -1 if param1 is less than param2</returns>
-    public virtual int Compare(string param1, string param2)
-    {
-      return 0;
-    }
-
-    /// <summary>
-    /// Converts an IntPtr array of context arguments to an object array containing the resolved parameters the pointers point to.
-    /// </summary>
-    /// <remarks>
-    /// Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
-    /// to force them into a certain type.  Therefore the only types you will ever see as parameters are
-    /// DBNull.Value, Int64, Double, String or byte[] array.
-    /// </remarks>
-    /// <param name="nArgs">The number of arguments</param>
-    /// <param name="argsptr">A pointer to the array of arguments</param>
-    /// <returns>An object array of the arguments once they've been converted to .NET values</returns>
-    internal object[] ConvertParams(int nArgs, IntPtr argsptr)
-    {
-      object[] parms = new object[nArgs];
-#if !PLATFORM_COMPACTFRAMEWORK
-      IntPtr[] argint = new IntPtr[nArgs];
-#else
-      int[] argint = new int[nArgs];
-#endif
-      Marshal.Copy(argsptr, argint, 0, nArgs);
-
-      for (int n = 0; n < nArgs; n++)
-      {
-        switch (_base.GetParamValueType((IntPtr)argint[n]))
-        {
-          case TypeAffinity.Null:
-            parms[n] = DBNull.Value;
-            break;
-          case TypeAffinity.Int64:
-            parms[n] = _base.GetParamValueInt64((IntPtr)argint[n]);
-            break;
-          case TypeAffinity.Double:
-            parms[n] = _base.GetParamValueDouble((IntPtr)argint[n]);
-            break;
-          case TypeAffinity.Text:
-            parms[n] = _base.GetParamValueText((IntPtr)argint[n]);
-            break;
-          case TypeAffinity.Blob:
-            {
-              int x;
-              byte[] blob;
-
-              x = (int)_base.GetParamValueBytes((IntPtr)argint[n], 0, null, 0, 0);
-              blob = new byte[x];
-              _base.GetParamValueBytes((IntPtr)argint[n], 0, blob, 0, x);
-              parms[n] = blob;
-            }
-            break;
-          case TypeAffinity.DateTime: // Never happens here but what the heck, maybe it will one day.
-            parms[n] = _base.ToDateTime(_base.GetParamValueText((IntPtr)argint[n]));
-            break;
-        }
-      }
-      return parms;
-    }
-
-    /// <summary>
-    /// Takes the return value from Invoke() and Final() and figures out how to return it to Sqlite's context.
-    /// </summary>
-    /// <param name="context">The context the return value applies to</param>
-    /// <param name="returnValue">The parameter to return to Sqlite</param>
-    void SetReturnValue(IntPtr context, object returnValue)
-    {
-      if (returnValue == null || returnValue == DBNull.Value)
-      {
-        _base.ReturnNull(context);
-        return;
-      }
-
-      Type t = returnValue.GetType();
-      if (t == typeof(DateTime))
-      {
-        _base.ReturnText(context, _base.ToString((DateTime)returnValue));
-        return;
-      }
-      else
-      {
-        Exception r = returnValue as Exception;
-
-        if (r != null)
-        {
-          _base.ReturnError(context, r.Message);
-          return;
-        }
-      }
-
-      switch (SqliteConvert.TypeToAffinity(t))
-      {
-        case TypeAffinity.Null:
-          _base.ReturnNull(context);
-          return;
-        case TypeAffinity.Int64:
-          _base.ReturnInt64(context, Convert.ToInt64(returnValue, CultureInfo.CurrentCulture));
-          return;
-        case TypeAffinity.Double:
-          _base.ReturnDouble(context, Convert.ToDouble(returnValue, CultureInfo.CurrentCulture));
-          return;
-        case TypeAffinity.Text:
-          _base.ReturnText(context, returnValue.ToString());
-          return;
-        case TypeAffinity.Blob:
-          _base.ReturnBlob(context, (byte[])returnValue);
-          return;
-      }
-    }
-
-    /// <summary>
-    /// Internal scalar callback function, which wraps the raw context pointer and calls the virtual Invoke() method.
-    /// </summary>
-    /// <param name="context">A raw context pointer</param>
-    /// <param name="nArgs">Number of arguments passed in</param>
-    /// <param name="argsptr">A pointer to the array of arguments</param>
-    internal void ScalarCallback(IntPtr context, int nArgs, IntPtr argsptr)
-    {
-      SetReturnValue(context, Invoke(ConvertParams(nArgs, argsptr)));
-    }
-
-    /// <summary>
-    /// Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function.
-    /// </summary>
-    /// <param name="len1">Length of the string pv1</param>
-    /// <param name="ptr1">Pointer to the first string to compare</param>
-    /// <param name="len2">Length of the string pv2</param>
-    /// <param name="ptr2">Pointer to the second string to compare</param>
-    /// <returns>Returns -1 if the first string is less than the second.  0 if they are equal, or 1 if the first string is greater
-    /// than the second.</returns>
-    internal int CompareCallback(int len1, IntPtr ptr1, int len2, IntPtr ptr2)
-    {
-      return Compare(_base.ToString(ptr1), _base.ToString(ptr2));
-    }
-
-    /// <summary>
-    /// The internal aggregate Step function callback, which wraps the raw context pointer and calls the virtual Step() method.
-    /// </summary>
-    /// <remarks>
-    /// This function takes care of doing the lookups and getting the important information put together to call the Step() function.
-    /// That includes pulling out the user's contextData and updating it after the call is made.  We use a sorted list for this so
-    /// binary searches can be done to find the data.
-    /// </remarks>
-    /// <param name="context">A raw context pointer</param>
-    /// <param name="nArgs">Number of arguments passed in</param>
-    /// <param name="argsptr">A pointer to the array of arguments</param>
-    internal void StepCallback(IntPtr context, int nArgs, IntPtr argsptr)
-    {
-      int n = _base.AggregateCount(context);
-      long nAux;
-      object obj = null;
-
-      nAux = (long)_base.AggregateContext(context);
-      if (n > 1) obj = _contextDataList[nAux];
-
-      Step(ConvertParams(nArgs, argsptr), n, ref obj);
-      _contextDataList[nAux] = obj;
-    }
-
-    /// <summary>
-    /// An internal aggregate Final function callback, which wraps the context pointer and calls the virtual Final() method.
-    /// </summary>
-    /// <param name="context">A raw context pointer</param>
-    internal void FinalCallback(IntPtr context)
-    {
-      long n = (long)_base.AggregateContext(context);
-      object obj = null;
-
-      if (_contextDataList.ContainsKey(n))
-      {
-        obj = _contextDataList[n];
-        _contextDataList.Remove(n);
-      }
-
-      SetReturnValue(context, Final(obj));
-
-      IDisposable disp = obj as IDisposable;
-      if (disp != null) disp.Dispose();
-    }
-
-    /// <summary>
-    /// Placeholder for a user-defined disposal routine
-    /// </summary>
-    /// <param name="disposing">True if the object is being disposed explicitly</param>
-    protected virtual void Dispose(bool disposing)
-    {
-    }
-
-    /// <summary>
-    /// Disposes of any active contextData variables that were not automatically cleaned up.  Sometimes this can happen if
-    /// someone closes the connection while a DataReader is open.
-    /// </summary>
-    public void Dispose()
-    {
-      Dispose(true);
-
-      IDisposable disp;
-
-      foreach (KeyValuePair<long, object> kv in _contextDataList)
-      {
-        disp = kv.Value as IDisposable;
-        if (disp != null)
-          disp.Dispose();
-      }
-      _contextDataList.Clear();
-
-      _InvokeFunc = null;
-      _StepFunc = null;
-      _FinalFunc = null;
-      _CompareFunc = null;
-      _base = null;
-      _contextDataList = null;
-
-      GC.SuppressFinalize(this);
-    }
-
-#if !PLATFORM_COMPACTFRAMEWORK
-    /// <summary>
-    /// Using reflection, enumerate all assemblies in the current appdomain looking for classes that
-    /// have a SqliteFunctionAttribute attribute, and registering them accordingly.
-    /// </summary>
-    static SqliteFunction()
-    {
-      SqliteFunctionAttribute at;
-      System.Reflection.Assembly[] arAssemblies = System.AppDomain.CurrentDomain.GetAssemblies();
-      int w = arAssemblies.Length;
-      System.Reflection.AssemblyName sqlite = System.Reflection.Assembly.GetCallingAssembly().GetName();
-
-      for (int n = 0; n < w; n++)
-      {
-        Type[] arTypes;
-        bool found = false;
-        System.Reflection.AssemblyName[] references;
-        try
-        {
-          // Inspect only assemblies that reference SQLite
-          references = arAssemblies[n].GetReferencedAssemblies();
-          int t = references.Length;
-          for (int z = 0; z < t; z++)
-          {
-            if (references[z].Name == sqlite.Name)
-            {
-              found = true;
-              break;
-            }
-          }
-
-          if (found == false)
-            continue;
-
-          arTypes = arAssemblies[n].GetTypes();
-        }
-        catch (System.Reflection.ReflectionTypeLoadException e)
-        {
-          arTypes = e.Types;
-        }
-
-        int v = arTypes.Length;
-        for (int x = 0; x < v; x++)
-        {
-          if (arTypes[x] == null) continue;
-
-          object[] arAtt = arTypes[x].GetCustomAttributes(typeof(SqliteFunctionAttribute), false);
-          int u = arAtt.Length;
-          for (int y = 0; y < u; y++)
-          {
-            at = arAtt[y] as SqliteFunctionAttribute;
-            if (at != null)
-            {
-              at._instanceType = arTypes[x];
-              _registeredFunctions.Add(at);
-            }
-          }
-        }
-      }
-    }
-#else
-    /// <summary>
-    /// Manual method of registering a function.  The type must still have the SqliteFunctionAttributes in order to work
-    /// properly, but this is a workaround for the Compact Framework where enumerating assemblies is not currently supported.
-    /// </summary>
-    /// <param name="typ">The type of the function to register</param>
-    public static void RegisterFunction(Type typ)
-    {
-      object[] arAtt = typ.GetCustomAttributes(typeof(SqliteFunctionAttribute), false);
-      int u = arAtt.Length;
-      SqliteFunctionAttribute at;
-
-      for (int y = 0; y < u; y++)
-      {
-        at = arAtt[y] as SqliteFunctionAttribute;
-        if (at != null)
-        {
-          at._instanceType = typ;
-          _registeredFunctions.Add(at);
-        }
-      }
-    }
-#endif
-
-    /// <summary>
-    /// Called by SqliteBase derived classes, this function binds all user-defined functions to a connection.
-    /// It is done this way so that all user-defined functions will access the database using the same encoding scheme
-    /// as the connection (UTF-8 or UTF-16).
-    /// </summary>
-    /// <param name="sqlbase">The base object on which the functions are to bind</param>
-    /// <returns>Returns an array of functions which the connection object should retain until the connection is closed.</returns>
-    internal static SqliteFunction[] BindFunctions(SqliteBase sqlbase)
-    {
-      SqliteFunction f;
-      List<SqliteFunction> lFunctions = new List<SqliteFunction>();
-
-      foreach (SqliteFunctionAttribute pr in _registeredFunctions)
-      {
-        f = (SqliteFunction)Activator.CreateInstance(pr._instanceType);
-        f._base = sqlbase;
-        f._InvokeFunc = (pr.FuncType == FunctionType.Scalar) ? new SqliteCallback(f.ScalarCallback) : null;
-        f._StepFunc = (pr.FuncType == FunctionType.Aggregate) ? new SqliteCallback(f.StepCallback) : null;
-        f._FinalFunc = (pr.FuncType == FunctionType.Aggregate) ? new SqliteFinalCallback(f.FinalCallback) : null;
-        f._CompareFunc = (pr.FuncType == FunctionType.Collation) ? new SqliteCollation(f.CompareCallback) : null;
-
-        if (pr.FuncType != FunctionType.Collation)
-          sqlbase.CreateFunction(pr.Name, pr.Arguments, f._InvokeFunc, f._StepFunc, f._FinalFunc);
-        else
-          sqlbase.CreateCollation(pr.Name, f._CompareFunc);
-        lFunctions.Add(f);
-      }
-
-      SqliteFunction[] arFunctions = new SqliteFunction[lFunctions.Count];
-      lFunctions.CopyTo(arFunctions, 0);
-
-      return arFunctions;
-
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunctionAttribute.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunctionAttribute.cs
deleted file mode 100644
index bd774b6..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteFunctionAttribute.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteFunctionAttribute.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Runtime.InteropServices;
-
-  /// <summary>
-  /// A simple custom attribute to enable us to easily find user-defined functions in
-  /// the loaded assemblies and initialize them in Sqlite as connections are made.
-  /// </summary>
-  [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = true)]
-  public class SqliteFunctionAttribute : Attribute
-  {
-    private string       _name;
-    private int          _arguments;
-    private FunctionType _functionType;
-    internal Type        _instanceType;
-
-    /// <summary>
-    /// Default constructor, initializes the internal variables for the function.
-    /// </summary>
-    public SqliteFunctionAttribute()
-    {
-      Name = "";
-      Arguments = -1;
-      FuncType = FunctionType.Scalar;
-    }
-
-    /// <summary>
-    /// The function's name as it will be used in Sqlite command text.
-    /// </summary>
-    public string Name
-    {
-      get { return _name; }
-      set { _name = value; }
-    }
-
-    /// <summary>
-    /// The number of arguments this function expects.  -1 if the number of arguments is variable.
-    /// </summary>
-    public int Arguments
-    {
-      get { return _arguments; }
-      set { _arguments = value; }
-    }
-
-    /// <summary>
-    /// The type of function this implementation will be.
-    /// </summary>
-    public FunctionType FuncType
-    {
-      get { return _functionType; }
-      set { _functionType = value; }
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteMetaDataCollectionNames.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteMetaDataCollectionNames.cs
deleted file mode 100644
index abebe04..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteMetaDataCollectionNames.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteMetaDataCollectionNames.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-
-  /// <summary>
-  /// MetaDataCollections specific to Sqlite
-  /// </summary>
-  public static class SqliteMetaDataCollectionNames
-  {
-    /// <summary>
-    /// Returns a list of databases attached to the connection
-    /// </summary>
-    public static readonly string Catalogs = "Catalogs";
-    /// <summary>
-    /// Returns column information for the specified table
-    /// </summary>
-    public static readonly string Columns = "Columns";
-    /// <summary>
-    /// Returns index information for the optionally-specified table
-    /// </summary>
-    public static readonly string Indexes = "Indexes";
-    /// <summary>
-    /// Returns base columns for the given index
-    /// </summary>
-    public static readonly string IndexColumns = "IndexColumns";
-    /// <summary>
-    /// Returns the tables in the given catalog
-    /// </summary>
-    public static readonly string Tables = "Tables";
-    /// <summary>
-    /// Returns user-defined views in the given catalog
-    /// </summary>
-    public static readonly string Views = "Views";
-    /// <summary>
-    /// Returns underlying column information on the given view
-    /// </summary>
-    public static readonly string ViewColumns = "ViewColumns";
-    /// <summary>
-    /// Returns foreign key information for the given catalog
-    /// </summary>
-    public static readonly string ForeignKeys = "ForeignKeys";
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameter.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameter.cs
deleted file mode 100644
index 4dba90f..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameter.cs
+++ /dev/null
@@ -1,481 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteParameter.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.ComponentModel;
-
-  /// <summary>
-  /// Sqlite implementation of DbParameter.
-  /// </summary>
-  public sealed class SqliteParameter : DbParameter, ICloneable
-  {
-    /// <summary>
-    /// The data type of the parameter
-    /// </summary>
-    internal int            _dbType;
-    /// <summary>
-    /// The version information for mapping the parameter
-    /// </summary>
-    private DataRowVersion _rowVersion;
-    /// <summary>
-    /// The value of the data in the parameter
-    /// </summary>
-    private Object         _objValue;
-    /// <summary>
-    /// The source column for the parameter
-    /// </summary>
-    private string         _sourceColumn;
-    /// <summary>
-    /// The column name
-    /// </summary>
-    private string         _parameterName;
-    /// <summary>
-    /// The data size, unused by Sqlite
-    /// </summary>
-    private int            _dataSize;
-
-    private bool           _nullable;
-    private bool           _nullMapping;
-
-    /// <summary>
-    /// Default constructor
-    /// </summary>
-    public SqliteParameter()
-      : this(null, (DbType)(-1), 0, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter given the specified parameter name
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    public SqliteParameter(string parameterName)
-      : this(parameterName, (DbType)(-1), 0, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter given the specified parameter name and initial value
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="value">The initial value of the parameter</param>
-    public SqliteParameter(string parameterName, object value)
-      : this(parameterName, (DbType)(-1), 0, null, DataRowVersion.Current)
-    {
-      Value = value;
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="dbType">The datatype of the parameter</param>
-    public SqliteParameter(string parameterName, DbType dbType)
-      : this(parameterName, dbType, 0, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type and source column reference
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="dbType">The data type</param>
-    /// <param name="sourceColumn">The source column</param>
-    public SqliteParameter(string parameterName, DbType dbType, string sourceColumn)
-      : this(parameterName, dbType, 0, sourceColumn, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type, source column and row version
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="dbType">The data type</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    public SqliteParameter(string parameterName, DbType dbType, string sourceColumn, DataRowVersion rowVersion)
-      : this(parameterName, dbType, 0, sourceColumn, rowVersion)
-    {
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified data type
-    /// </summary>
-    /// <param name="dbType">The datatype of the parameter</param>
-    public SqliteParameter(DbType dbType)
-      : this(null, dbType, 0, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified data type and sets the initial value
-    /// </summary>
-    /// <param name="dbType">The datatype of the parameter</param>
-    /// <param name="value">The initial value of the parameter</param>
-    public SqliteParameter(DbType dbType, object value)
-      : this(null, dbType, 0, null, DataRowVersion.Current)
-    {
-      Value = value;
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified data type and source column
-    /// </summary>
-    /// <param name="dbType">The datatype of the parameter</param>
-    /// <param name="sourceColumn">The source column</param>
-    public SqliteParameter(DbType dbType, string sourceColumn)
-      : this(null, dbType, 0, sourceColumn, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified data type, source column and row version
-    /// </summary>
-    /// <param name="dbType">The data type</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    public SqliteParameter(DbType dbType, string sourceColumn, DataRowVersion rowVersion)
-      : this(null, dbType, 0, sourceColumn, rowVersion)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type and size
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    public SqliteParameter(string parameterName, DbType parameterType, int parameterSize)
-      : this(parameterName, parameterType, parameterSize, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type, size and source column
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="sourceColumn">The source column</param>
-    public SqliteParameter(string parameterName, DbType parameterType, int parameterSize, string sourceColumn)
-      : this(parameterName, parameterType, parameterSize, sourceColumn, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type, size, source column and row version
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    public SqliteParameter(string parameterName, DbType parameterType, int parameterSize, string sourceColumn, DataRowVersion rowVersion)
-    {
-      _parameterName = parameterName;
-      _dbType = (int)parameterType;
-      _sourceColumn = sourceColumn;
-      _rowVersion = rowVersion;
-      _objValue = null;
-      _dataSize = parameterSize;
-      _nullMapping = false;
-      _nullable = true;
-    }
-
-    private SqliteParameter(SqliteParameter source)
-      : this(source.ParameterName, (DbType)source._dbType, 0, source.Direction, source.IsNullable, 0, 0, source.SourceColumn, source.SourceVersion, source.Value)
-    {
-      _nullMapping = source._nullMapping;
-    }
-
-    /// <summary>
-    /// Constructs a named parameter of the specified type, size, source column and row version
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="direction">Only input parameters are supported in Sqlite</param>
-    /// <param name="isNullable">Ignored</param>
-    /// <param name="precision">Ignored</param>
-    /// <param name="scale">Ignored</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    /// <param name="value">The initial value to assign the parameter</param>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [EditorBrowsable(EditorBrowsableState.Advanced)]
-#endif
-    public SqliteParameter(string parameterName, DbType parameterType, int parameterSize, ParameterDirection direction, bool isNullable, byte precision, byte scale, string sourceColumn, DataRowVersion rowVersion, object value)
-      : this(parameterName, parameterType, parameterSize, sourceColumn, rowVersion)
-    {
-      Direction = direction;
-      IsNullable = isNullable;
-      Value = value;
-    }
-
-    /// <summary>
-    /// Constructs a named parameter, yet another flavor
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="direction">Only input parameters are supported in Sqlite</param>
-    /// <param name="precision">Ignored</param>
-    /// <param name="scale">Ignored</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    /// <param name="sourceColumnNullMapping">Whether or not this parameter is for comparing NULL's</param>
-    /// <param name="value">The intial value to assign the parameter</param>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [EditorBrowsable(EditorBrowsableState.Advanced)]
-#endif
-    public SqliteParameter(string parameterName, DbType parameterType, int parameterSize, ParameterDirection direction, byte precision, byte scale, string sourceColumn, DataRowVersion rowVersion, bool sourceColumnNullMapping, object value)
-      : this(parameterName, parameterType, parameterSize, sourceColumn, rowVersion)
-    {
-      Direction = direction;
-      SourceColumnNullMapping = sourceColumnNullMapping;
-      Value = value;
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified type and size
-    /// </summary>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    public SqliteParameter(DbType parameterType, int parameterSize)
-      : this(null, parameterType, parameterSize, null, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified type, size, and source column
-    /// </summary>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="sourceColumn">The source column</param>
-    public SqliteParameter(DbType parameterType, int parameterSize, string sourceColumn)
-      : this(null, parameterType, parameterSize, sourceColumn, DataRowVersion.Current)
-    {
-    }
-
-    /// <summary>
-    /// Constructs an unnamed parameter of the specified type, size, source column and row version
-    /// </summary>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the parameter</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <param name="rowVersion">The row version information</param>
-    public SqliteParameter(DbType parameterType, int parameterSize, string sourceColumn, DataRowVersion rowVersion)
-      : this(null, parameterType, parameterSize, sourceColumn, rowVersion)
-    {
-    }
-
-    /// <summary>
-    /// Whether or not the parameter can contain a null value
-    /// </summary>
-    public override bool IsNullable
-    {
-      get
-      {
-        return _nullable;
-      }
-      set
-      {
-        _nullable = value;
-      }
-    }
-
-    /// <summary>
-    /// Returns the datatype of the parameter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DbProviderSpecificTypeProperty(true)]
-    [RefreshProperties(RefreshProperties.All)]
-#endif
-    public override DbType DbType
-    {
-      get
-      {
-        if (_dbType == -1) return DbType.String; // Unassigned default value is String
-        return (DbType)_dbType;
-      }
-      set
-      {
-        _dbType = (int)value;
-      }
-    }
-
-    /// <summary>
-    /// Supports only input parameters
-    /// </summary>
-    public override ParameterDirection Direction
-    {
-      get
-      {
-        return ParameterDirection.Input;
-      }
-      set
-      {
-        if (value != ParameterDirection.Input)
-          throw new NotSupportedException();
-      }
-    }
-
-    /// <summary>
-    /// Returns the parameter name
-    /// </summary>
-    public override string ParameterName
-    {
-      get
-      {
-        return _parameterName;
-      }
-      set
-      {
-        _parameterName = value;
-      }
-    }
-
-    /// <summary>
-    /// Not implemented
-    /// </summary>
-    public override void ResetDbType()
-    {
-    }
-
-    /// <summary>
-    /// Returns the size of the parameter
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [DefaultValue((int)0)]
-#endif
-    public override int Size
-    {
-      get
-      {
-        return _dataSize;
-      }
-      set
-      {
-        _dataSize = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets/sets the source column
-    /// </summary>
-    public override string SourceColumn
-    {
-      get
-      {
-        return _sourceColumn;
-      }
-      set
-      {
-        _sourceColumn = value;
-      }
-    }
-
-    /// <summary>
-    /// Used by DbCommandBuilder to determine the mapping for nullable fields
-    /// </summary>
-    public override bool SourceColumnNullMapping
-    {
-      get
-      {
-        return _nullMapping;
-      }
-      set
-      {
-        _nullMapping = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets and sets the row version
-    /// </summary>
-    public override DataRowVersion SourceVersion
-    {
-      get
-      {
-        return _rowVersion;
-      }
-      set
-      {
-        _rowVersion = value;
-      }
-    }
-
-    /// <summary>
-    /// Gets and sets the parameter value.  If no datatype was specified, the datatype will assume the type from the value given.
-    /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [TypeConverter(typeof(StringConverter)), RefreshProperties(RefreshProperties.All)]
-#endif
-    public override object Value
-    {
-      get
-      {
-        return _objValue;
-      }
-      set
-      {
-        _objValue = value;
-        if (_dbType == -1 && _objValue != null && _objValue != DBNull.Value) // If the DbType has never been assigned, try to glean one from the value's datatype
-          _dbType = (int)SqliteConvert.TypeToDbType(_objValue.GetType());
-      }
-    }
-
-    /// <summary>
-    /// Clones a parameter
-    /// </summary>
-    /// <returns>A new, unassociated SqliteParameter</returns>
-    public object Clone()
-    {
-      SqliteParameter newparam = new SqliteParameter(this);
-
-      return newparam;
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameterCollection.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameterCollection.cs
deleted file mode 100644
index c0f8b0a..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteParameterCollection.cs
+++ /dev/null
@@ -1,507 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteParameterCollection.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-  using System.Collections.Generic;
-  using System.Globalization;
-  using System.ComponentModel;
-  using System.Reflection;
-
-  /// <summary>
-  /// Sqlite implementation of DbParameterCollection.
-  /// </summary>
-#if !PLATFORM_COMPACTFRAMEWORK
-  [Editor("Microsoft.VSDesigner.Data.Design.DBParametersEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"), ListBindable(false)]
-#endif
-  public sealed class SqliteParameterCollection : DbParameterCollection
-  {
-    /// <summary>
-    /// The underlying command to which this collection belongs
-    /// </summary>
-    private SqliteCommand         _command;
-    /// <summary>
-    /// The internal array of parameters in this collection
-    /// </summary>
-    private List<SqliteParameter> _parameterList;
-    /// <summary>
-    /// Determines whether or not all parameters have been bound to their statement(s)
-    /// </summary>
-    private bool                  _unboundFlag;
-
-    /// <summary>
-    /// Initializes the collection
-    /// </summary>
-    /// <param name="cmd">The command to which the collection belongs</param>
-    internal SqliteParameterCollection(SqliteCommand cmd)
-    {
-      _command = cmd;
-      _parameterList = new List<SqliteParameter>();
-      _unboundFlag = true;
-    }
-
-    /// <summary>
-    /// Returns true
-    /// </summary>
-    public override bool IsSynchronized
-    {
-      get { return true; }
-    }
-
-    /// <summary>
-    /// Returns false
-    /// </summary>
-    public override bool IsFixedSize
-    {
-      get { return false; }
-    }
-
-    /// <summary>
-    /// Returns false
-    /// </summary>
-    public override bool IsReadOnly
-    {
-      get { return false; }
-    }
-
-    /// <summary>
-    /// Returns null
-    /// </summary>
-    public override object SyncRoot
-    {
-      get { return null; }
-    }
-
-    /// <summary>
-    /// Retrieves an enumerator for the collection
-    /// </summary>
-    /// <returns>An enumerator for the underlying array</returns>
-    public override System.Collections.IEnumerator GetEnumerator()
-    {
-      return _parameterList.GetEnumerator();
-    }
-
-    /// <summary>
-    /// Adds a parameter to the collection
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the value</param>
-    /// <param name="sourceColumn">The source column</param>
-    /// <returns>A SqliteParameter object</returns>
-    public SqliteParameter Add(string parameterName, DbType parameterType, int parameterSize, string sourceColumn)
-    {
-      SqliteParameter param = new SqliteParameter(parameterName, parameterType, parameterSize, sourceColumn);
-      Add(param);
-
-      return param;
-    }
-
-    /// <summary>
-    /// Adds a parameter to the collection
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="parameterType">The data type</param>
-    /// <param name="parameterSize">The size of the value</param>
-    /// <returns>A SqliteParameter object</returns>
-    public SqliteParameter Add(string parameterName, DbType parameterType, int parameterSize)
-    {
-      SqliteParameter param = new SqliteParameter(parameterName, parameterType, parameterSize);
-      Add(param);
-
-      return param;
-    }
-
-    /// <summary>
-    /// Adds a parameter to the collection
-    /// </summary>
-    /// <param name="parameterName">The parameter name</param>
-    /// <param name="parameterType">The data type</param>
-    /// <returns>A SqliteParameter object</returns>
-    public SqliteParameter Add(string parameterName, DbType parameterType)
-    {
-      SqliteParameter param = new SqliteParameter(parameterName, parameterType);
-      Add(param);
-
-      return param;
-    }
-
-    /// <summary>
-    /// Adds a parameter to the collection
-    /// </summary>
-    /// <param name="parameter">The parameter to add</param>
-    /// <returns>A zero-based index of where the parameter is located in the array</returns>
-    public int Add(SqliteParameter parameter)
-    {
-      int n = -1;
-
-      if (parameter.ParameterName != null)
-      {
-        n = IndexOf(parameter.ParameterName);
-      }
-
-      if (n == -1)
-      {
-        n = _parameterList.Count;
-        _parameterList.Add((SqliteParameter)parameter);
-      }
-
-      SetParameter(n, parameter);
-
-      return n;
-    }
-
-    /// <summary>
-    /// Adds a parameter to the collection
-    /// </summary>
-    /// <param name="value">The parameter to add</param>
-    /// <returns>A zero-based index of where the parameter is located in the array</returns>
-#if !PLATFORM_COMPACTFRAMEWORK
-    [EditorBrowsable(EditorBrowsableState.Never)]
-#endif
-    public override int Add(object value)
-    {
-      return Add((SqliteParameter)value);
-    }
-
-    /// <summary>
-    /// Adds a named/unnamed parameter and its value to the parameter collection.
-    /// </summary>
-    /// <param name="parameterName">Name of the parameter, or null to indicate an unnamed parameter</param>
-    /// <param name="value">The initial value of the parameter</param>
-    /// <returns>Returns the SqliteParameter object created during the call.</returns>
-    public SqliteParameter AddWithValue(string parameterName, object value)
-    {
-      SqliteParameter param = new SqliteParameter(parameterName, value);
-      Add(param);
-
-      return param;
-    }
-
-    /// <summary>
-    /// Adds an array of parameters to the collection
-    /// </summary>
-    /// <param name="values">The array of parameters to add</param>
-    public void AddRange(SqliteParameter[] values)
-    {
-      int x = values.Length;
-      for (int n = 0; n < x; n++)
-        Add(values[n]);
-    }
-
-    /// <summary>
-    /// Adds an array of parameters to the collection
-    /// </summary>
-    /// <param name="values">The array of parameters to add</param>
-    public override void AddRange(Array values)
-    {
-      int x = values.Length;
-      for (int n = 0; n < x; n++)
-        Add((SqliteParameter)(values.GetValue(n)));
-    }
-
-    /// <summary>
-    /// Clears the array and resets the collection
-    /// </summary>
-    public override void Clear()
-    {
-      _unboundFlag = true;
-      _parameterList.Clear();
-    }
-
-    /// <summary>
-    /// Determines if the named parameter exists in the collection
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter to check</param>
-    /// <returns>True if the parameter is in the collection</returns>
-    public override bool Contains(string parameterName)
-    {
-      return (IndexOf(parameterName) != -1);
-    }
-
-    /// <summary>
-    /// Determines if the parameter exists in the collection
-    /// </summary>
-    /// <param name="value">The SqliteParameter to check</param>
-    /// <returns>True if the parameter is in the collection</returns>
-    public override bool Contains(object value)
-    {
-      return _parameterList.Contains((SqliteParameter)value);
-    }
-
-    /// <summary>
-    /// Not implemented
-    /// </summary>
-    /// <param name="array"></param>
-    /// <param name="index"></param>
-    public override void CopyTo(Array array, int index)
-    {
-      throw new NotImplementedException();
-    }
-
-    /// <summary>
-    /// Returns a count of parameters in the collection
-    /// </summary>
-    public override int Count
-    {
-      get { return _parameterList.Count; }
-    }
-
-    /// <summary>
-    /// Overloaded to specialize the return value of the default indexer
-    /// </summary>
-    /// <param name="parameterName">Name of the parameter to get/set</param>
-    /// <returns>The specified named Sqlite parameter</returns>
-    public new SqliteParameter this[string parameterName]
-    {
-      get
-      {
-        return (SqliteParameter)GetParameter(parameterName);
-      }
-      set
-      {
-        SetParameter(parameterName, value);
-      }
-    }
-
-    /// <summary>
-    /// Overloaded to specialize the return value of the default indexer
-    /// </summary>
-    /// <param name="index">The index of the parameter to get/set</param>
-    /// <returns>The specified Sqlite parameter</returns>
-    public new SqliteParameter this[int index]
-    {
-      get
-      {
-        return (SqliteParameter)GetParameter(index);
-      }
-      set
-      {
-        SetParameter(index, value);
-      }
-    }
-    /// <summary>
-    /// Retrieve a parameter by name from the collection
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter to fetch</param>
-    /// <returns>A DbParameter object</returns>
-    protected override DbParameter GetParameter(string parameterName)
-    {
-      return GetParameter(IndexOf(parameterName));
-    }
-
-    /// <summary>
-    /// Retrieves a parameter by its index in the collection
-    /// </summary>
-    /// <param name="index">The index of the parameter to retrieve</param>
-    /// <returns>A DbParameter object</returns>
-    protected override DbParameter GetParameter(int index)
-    {
-      return _parameterList[index];
-    }
-
-    /// <summary>
-    /// Returns the index of a parameter given its name
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter to find</param>
-    /// <returns>-1 if not found, otherwise a zero-based index of the parameter</returns>
-    public override int IndexOf(string parameterName)
-    {
-      int x = _parameterList.Count;
-      for (int n = 0; n < x; n++)
-      {
-        if (String.Compare(parameterName, _parameterList[n].ParameterName, true, CultureInfo.InvariantCulture) == 0)
-          return n;
-      }
-      return -1;
-    }
-
-    /// <summary>
-    /// Returns the index of a parameter
-    /// </summary>
-    /// <param name="value">The parameter to find</param>
-    /// <returns>-1 if not found, otherwise a zero-based index of the parameter</returns>
-    public override int IndexOf(object value)
-    {
-      return _parameterList.IndexOf((SqliteParameter)value);
-    }
-
-    /// <summary>
-    /// Inserts a parameter into the array at the specified location
-    /// </summary>
-    /// <param name="index">The zero-based index to insert the parameter at</param>
-    /// <param name="value">The parameter to insert</param>
-    public override void Insert(int index, object value)
-    {
-      _unboundFlag = true;
-      _parameterList.Insert(index, (SqliteParameter)value);
-    }
-
-    /// <summary>
-    /// Removes a parameter from the collection
-    /// </summary>
-    /// <param name="value">The parameter to remove</param>
-    public override void Remove(object value)
-    {
-      _unboundFlag = true;
-      _parameterList.Remove((SqliteParameter)value);
-    }
-
-    /// <summary>
-    /// Removes a parameter from the collection given its name
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter to remove</param>
-    public override void RemoveAt(string parameterName)
-    {
-      RemoveAt(IndexOf(parameterName));
-    }
-
-    /// <summary>
-    /// Removes a parameter from the collection given its index
-    /// </summary>
-    /// <param name="index">The zero-based parameter index to remove</param>
-    public override void RemoveAt(int index)
-    {
-      _unboundFlag = true;
-      _parameterList.RemoveAt(index);
-    }
-
-    /// <summary>
-    /// Re-assign the named parameter to a new parameter object
-    /// </summary>
-    /// <param name="parameterName">The name of the parameter to replace</param>
-    /// <param name="value">The new parameter</param>
-    protected override void SetParameter(string parameterName, DbParameter value)
-    {
-      SetParameter(IndexOf(parameterName), value);
-    }
-
-    /// <summary>
-    /// Re-assign a parameter at the specified index
-    /// </summary>
-    /// <param name="index">The zero-based index of the parameter to replace</param>
-    /// <param name="value">The new parameter</param>
-    protected override void SetParameter(int index, DbParameter value)
-    {
-      _unboundFlag = true;
-      _parameterList[index] = (SqliteParameter)value;
-    }
-
-    /// <summary>
-    /// Un-binds all parameters from their statements
-    /// </summary>
-    internal void Unbind()
-    {
-      _unboundFlag = true;
-    }
-
-    /// <summary>
-    /// This function attempts to map all parameters in the collection to all statements in a Command.
-    /// Since named parameters may span multiple statements, this function makes sure all statements are bound
-    /// to the same named parameter.  Unnamed parameters are bound in sequence.
-    /// </summary>
-    internal void MapParameters(SqliteStatement activeStatement)
-    {
-      if (_unboundFlag == false || _parameterList.Count == 0 || _command._statementList == null) return;
-
-      int nUnnamed = 0;
-      string s;
-      int n;
-      int y = -1;
-      SqliteStatement stmt;
-
-      foreach(SqliteParameter p in _parameterList)
-      {
-        y ++;
-        s = p.ParameterName;
-        if (s == null)
-        {
-          s = String.Format(CultureInfo.InvariantCulture, ";{0}", nUnnamed);
-          nUnnamed++;
-        }
-
-        int x;
-        bool isMapped = false;
-
-        if (activeStatement == null)
-          x = _command._statementList.Count;
-        else
-          x = 1;
-
-        stmt = activeStatement;
-        for (n = 0; n < x; n++)
-        {
-          isMapped = false;
-          if (stmt == null) stmt = _command._statementList[n];
-          if (stmt._paramNames != null)
-          {
-            if (stmt.MapParameter(s, p) == true)
-              isMapped = true;
-          }
-          stmt = null;
-        }
-
-        // If the parameter has a name, but the SQL statement uses unnamed references, this can happen -- attempt to map
-        // the parameter by its index in the collection
-        if (isMapped == false)
-        {
-          s = String.Format(CultureInfo.InvariantCulture, ";{0}", y);
-
-          stmt = activeStatement;
-          for (n = 0; n < x; n++)
-          {
-            if (stmt == null) stmt = _command._statementList[n];
-            if (stmt._paramNames != null)
-            {
-              if (stmt.MapParameter(s, p) == true)
-                isMapped = true;
-            }
-            stmt = null;
-          }
-        }
-      }
-      if (activeStatement == null) _unboundFlag = false;
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteStatement.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteStatement.cs
deleted file mode 100644
index d12f72c..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteStatement.cs
+++ /dev/null
@@ -1,281 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteStatement.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Collections.Generic;
-  using System.Globalization;
-
-  /// <summary>
-  /// Represents a single SQL statement in Sqlite.
-  /// </summary>
-  internal sealed class SqliteStatement : IDisposable
-  {
-    /// <summary>
-    /// The underlying Sqlite object this statement is bound to
-    /// </summary>
-    internal SqliteBase        _sql;
-    /// <summary>
-    /// The command text of this SQL statement
-    /// </summary>
-    internal string            _sqlStatement;
-    /// <summary>
-    /// The actual statement pointer
-    /// </summary>
-    internal IntPtr            _sqlite_stmt;
-    /// <summary>
-    /// An index from which unnamed parameters begin
-    /// </summary>
-    internal int               _unnamedParameters;
-    /// <summary>
-    /// Names of the parameters as Sqlite understands them to be
-    /// </summary>
-    internal string[]          _paramNames;
-    /// <summary>
-    /// Parameters for this statement
-    /// </summary>
-    internal SqliteParameter[] _paramValues;
-    /// <summary>
-    /// Command this statement belongs to (if any)
-    /// </summary>
-    internal SqliteCommand     _command;
-
-    private string[] _types;
-
-    /// <summary>
-    /// Initializes the statement and attempts to get all information about parameters in the statement
-    /// </summary>
-    /// <param name="sqlbase">The base Sqlite object</param>
-    /// <param name="stmt">The statement</param>
-    /// <param name="strCommand">The command text for this statement</param>
-    /// <param name="previous">The previous command in a multi-statement command</param>
-    internal SqliteStatement(SqliteBase sqlbase, IntPtr stmt, string strCommand, SqliteStatement previous)
-    {
-      _sql     = sqlbase;
-      _sqlite_stmt = stmt;
-      _sqlStatement  = strCommand;
-
-      // Determine parameters for this statement (if any) and prepare space for them.
-      int nCmdStart = 0;
-      int n = _sql.Bind_ParamCount(this);
-      int x;
-      string s;
-
-      if (n > 0)
-      {
-        if (previous != null)
-          nCmdStart = previous._unnamedParameters;
-
-        _paramNames = new string[n];
-        _paramValues = new SqliteParameter[n];
-
-        for (x = 0; x < n; x++)
-        {
-          s = _sql.Bind_ParamName(this, x + 1);
-          if (String.IsNullOrEmpty(s))
-          {
-            s = String.Format(CultureInfo.InvariantCulture, ";{0}", nCmdStart);
-            nCmdStart++;
-            _unnamedParameters++;
-          }
-          _paramNames[x] = s;
-          _paramValues[x] = null;
-        }
-      }
-    }
-
-    /// <summary>
-    /// Called by SqliteParameterCollection, this function determines if the specified parameter name belongs to
-    /// this statement, and if so, keeps a reference to the parameter so it can be bound later.
-    /// </summary>
-    /// <param name="s">The parameter name to map</param>
-    /// <param name="p">The parameter to assign it</param>
-    internal bool MapParameter(string s, SqliteParameter p)
-    {
-      if (_paramNames == null) return false;
-
-      int startAt = 0;
-      if (s.Length > 0)
-      {
-        if (":$@;".IndexOf(s[0]) == -1)
-          startAt = 1;
-      }
-
-      int x = _paramNames.Length;
-      for (int n = 0; n < x; n++)
-      {
-        if (String.Compare(_paramNames[n], startAt, s, 0, Math.Max(_paramNames[n].Length - startAt, s.Length), true, CultureInfo.InvariantCulture) == 0)
-        {
-          _paramValues[n] = p;
-          return true;
-        }
-      }
-      return false;
-    }
-
-    #region IDisposable Members
-    /// <summary>
-    /// Disposes and finalizes the statement
-    /// </summary>
-    public void Dispose()
-    {
-      _sql.FinalizeStatement(this);
-
-      _paramNames = null;
-      _paramValues = null;
-      _sql = null;
-      _sqlStatement = null;
-
-      GC.SuppressFinalize(this);
-    }
-    #endregion
-
-    /// <summary>
-    ///  Bind all parameters, making sure the caller didn't miss any
-    /// </summary>
-    internal void BindParameters()
-    {
-      if (_paramNames == null) return;
-
-      int x = _paramNames.Length;
-      for (int n = 0; n < x; n++)
-      {
-        BindParameter(n + 1, _paramValues[n]);
-      }
-    }
-
-    /// <summary>
-    /// Perform the bind operation for an individual parameter
-    /// </summary>
-    /// <param name="index">The index of the parameter to bind</param>
-    /// <param name="param">The parameter we're binding</param>
-    private void BindParameter(int index, SqliteParameter param)
-    {
-      if (param == null)
-        throw new SqliteException((int)SqliteErrorCode.Error, "Insufficient parameters supplied to the command");
-
-      object obj = param.Value;
-      DbType objType = param.DbType;
-
-      if (Convert.IsDBNull(obj) || obj == null)
-      {
-        _sql.Bind_Null(this, index);
-        return;
-      }
-
-      if (objType == DbType.Object)
-        objType = SqliteConvert.TypeToDbType(obj.GetType());
-
-      switch (objType)
-      {
-        case DbType.Date:
-        case DbType.Time:
-        case DbType.DateTime:
-          _sql.Bind_DateTime(this, index, Convert.ToDateTime(obj, CultureInfo.CurrentCulture));
-          break;
-        case DbType.Int64:
-        case DbType.UInt64:
-          _sql.Bind_Int64(this, index, Convert.ToInt64(obj, CultureInfo.CurrentCulture));
-          break;
-        case DbType.Boolean:
-        case DbType.Int16:
-        case DbType.Int32:
-        case DbType.UInt16:
-        case DbType.UInt32:
-        case DbType.SByte:
-        case DbType.Byte:
-          _sql.Bind_Int32(this, index, Convert.ToInt32(obj, CultureInfo.CurrentCulture));
-          break;
-        case DbType.Single:
-        case DbType.Double:
-        case DbType.Currency:
-        case DbType.Decimal:
-          _sql.Bind_Double(this, index, Convert.ToDouble(obj, CultureInfo.CurrentCulture));
-          break;
-        case DbType.Binary:
-          _sql.Bind_Blob(this, index, (byte[])obj);
-          break;
-        case DbType.Guid:
-          if (_command.Connection._binaryGuid == true)
-            _sql.Bind_Blob(this, index, ((Guid)obj).ToByteArray());
-          else
-            _sql.Bind_Text(this, index, obj.ToString());
-
-          break;
-        default:
-          _sql.Bind_Text(this, index, obj.ToString());
-          break;
-      }
-    }
-
-    internal string[] TypeDefinitions
-    {
-      get { return _types; }
-    }
-
-    internal void SetTypes(string typedefs)
-    {
-      int pos = typedefs.IndexOf("TYPES", 0, StringComparison.OrdinalIgnoreCase);
-      if (pos == -1) throw new ArgumentOutOfRangeException();
-
-      string[] types = typedefs.Substring(pos + 6).Replace(" ", "").Replace(";", "").Replace("\"", "").Replace("[", "").Replace("]", "").Split(',', '\r', '\n', '\t');
-
-      int cols = 0;
-      int n;
-      for (n = 0; n < types.Length; n++)
-      {
-        if (String.IsNullOrEmpty(types[n]) == false)
-          cols++;
-      }
-
-      _types = new string[cols];
-
-      cols = 0;
-      for (n = 0; n < types.Length; n++)
-      {
-        if (String.IsNullOrEmpty(types[n]) == false)
-          _types[cols++] = types[n];
-      }
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteTransaction.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteTransaction.cs
deleted file mode 100644
index 9678f0a..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SQLiteTransaction.cs
+++ /dev/null
@@ -1,206 +0,0 @@
-//
-// Mono.Data.Sqlite.SQLiteTransaction.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Data;
-  using System.Data.Common;
-
-  /// <summary>
-  /// Sqlite implementation of DbTransaction.
-  /// </summary>
-  public sealed class SqliteTransaction : DbTransaction
-  {
-    /// <summary>
-    /// The connection to which this transaction is bound
-    /// </summary>
-    internal SqliteConnection _cnn;
-    internal long _version; // Matches the version of the connection
-
-    /// <summary>
-    /// Constructs the transaction object, binding it to the supplied connection
-    /// </summary>
-    /// <param name="connection">The connection to open a transaction on</param>
-    /// <param name="deferredLock">TRUE to defer the writelock, or FALSE to lock immediately</param>
-    internal SqliteTransaction(SqliteConnection connection, bool deferredLock)
-    {
-      _cnn = connection;
-      _version = _cnn._version;
-
-      if (_cnn._transactionLevel++ == 0)
-      {
-        try
-        {
-          using (SqliteCommand cmd = _cnn.CreateCommand())
-          {
-            if (!deferredLock)
-              cmd.CommandText = "BEGIN IMMEDIATE";
-            else
-              cmd.CommandText = "BEGIN";
-
-            cmd.ExecuteNonQuery();
-          }
-        }
-        catch (SqliteException)
-        {
-          _cnn._transactionLevel--;
-          _cnn = null;
-          throw;
-        }
-      }
-    }
-
-    /// <summary>
-    /// Commits the current transaction.
-    /// </summary>
-    public override void Commit()
-    {
-      IsValid(true);
-
-      if (--_cnn._transactionLevel == 0)
-      {
-        try
-        {
-          using (SqliteCommand cmd = _cnn.CreateCommand())
-          {
-            cmd.CommandText = "COMMIT";
-            cmd.ExecuteNonQuery();
-          }
-        }
-        finally
-        {
-          _cnn = null;
-        }
-      }
-      else
-      {
-        _cnn = null;
-      }
-    }
-
-    /// <summary>
-    /// Returns the underlying connection to which this transaction applies.
-    /// </summary>
-    public new SqliteConnection Connection
-    {
-      get { return _cnn; }
-    }
-
-    /// <summary>
-    /// Forwards to the local Connection property
-    /// </summary>
-    protected override DbConnection DbConnection
-    {
-      get { return Connection; }
-    }
-
-    /// <summary>
-    /// Disposes the transaction.  If it is currently active, any changes are rolled back.
-    /// </summary>
-    protected override void Dispose(bool disposing)
-    {
-      if (IsValid(false))
-        Rollback();
-
-      _cnn = null;
-
-      base.Dispose(disposing);
-    }
-
-    /// <summary>
-    /// Gets the isolation level of the transaction.  Sqlite only supports Serializable transactions.
-    /// </summary>
-    public override IsolationLevel IsolationLevel
-    {
-      get { return IsolationLevel.Serializable; }
-    }
-
-    /// <summary>
-    /// Rolls back the active transaction.
-    /// </summary>
-    public override void Rollback()
-    {
-      IsValid(true);
-
-      try
-      {
-        using (SqliteCommand cmd = _cnn.CreateCommand())
-        {
-          cmd.CommandText = "ROLLBACK";
-          cmd.ExecuteNonQuery();
-        }
-        _cnn._transactionLevel = 0;
-      }
-      finally
-      {
-        _cnn = null;
-      }
-    }
-
-    internal bool IsValid(bool throwError)
-    {
-      if (_cnn == null)
-      {
-        if (throwError == true) throw new ArgumentNullException("No connection associated with this transaction");
-        else return false;
-      }
-
-      if (_cnn._transactionLevel == 0)
-      {
-        if (throwError == true) throw new SqliteException((int)SqliteErrorCode.Misuse, "No transaction is active on this connection");
-        else return false;
-      }
-      if (_cnn._version != _version)
-      {
-        if (throwError == true) throw new SqliteException((int)SqliteErrorCode.Misuse, "The connection was closed and re-opened, changes were rolled back");
-        else return false;
-      }
-      if (_cnn.State != ConnectionState.Open)
-      {
-        if (throwError == true) throw new SqliteException((int)SqliteErrorCode.Misuse, "Connection was closed");
-        else return false;
-      }
-
-      return true;
-    }
-  }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SR.Designer.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SR.Designer.cs
deleted file mode 100644
index 944c047..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SR.Designer.cs
+++ /dev/null
@@ -1,148 +0,0 @@
-//
-// Mono.Data.Sqlite.SR.Designer.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:2.0.50727.42
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-#if NET_2_0
-namespace Mono.Data.Sqlite {
-    using System;
-
-
-    /// <summary>
-    ///   A strongly-typed resource class, for looking up localized strings, etc.
-    /// </summary>
-    // This class was auto-generated by the StronglyTypedResourceBuilder
-    // class via a tool like ResGen or Visual Studio.
-    // To add or remove a member, edit your .ResX file then rerun ResGen
-    // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    internal class SR {
-
-        private static global::System.Resources.ResourceManager resourceMan;
-
-        private static global::System.Globalization.CultureInfo resourceCulture;
-
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-        internal SR() {
-        }
-
-        /// <summary>
-        ///   Returns the cached ResourceManager instance used by this class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        internal static global::System.Resources.ResourceManager ResourceManager {
-            get {
-                if (object.ReferenceEquals(resourceMan, null)) {
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SR", typeof(SR).Assembly);
-                    resourceMan = temp;
-                }
-                return resourceMan;
-            }
-        }
-
-        /// <summary>
-        ///   Overrides the current thread's CurrentUICulture property for all
-        ///   resource lookups using this strongly typed resource class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        internal static global::System.Globalization.CultureInfo Culture {
-            get {
-                return resourceCulture;
-            }
-            set {
-                resourceCulture = value;
-            }
-        }
-
-        /// <summary>
-        ///   Looks up a localized string similar to <?xml version="1.0" standalone="yes"?>
-        ///<DocumentElement>
-        ///  <DataTypes>
-        ///    <TypeName>smallint</TypeName>
-        ///    <ProviderDbType>10</ProviderDbType>
-        ///    <ColumnSize>5</ColumnSize>
-        ///    <DataType>System.Int16</DataType>
-        ///    <CreateFormat>smallint</CreateFormat>
-        ///    <IsAutoIncrementable>false</IsAutoIncrementable>
-        ///    <IsCaseSensitive>false</IsCaseSensitive>
-        ///    <IsFixedLength>true</IsFixedLength>
-        ///    <IsFixedPrecisionScale>true</IsFixedPrecisionScale>
-        ///    <IsLong>false</IsLong>
-        ///    <IsNullable>true</ [rest of string was truncated]";.
-        /// </summary>
-        internal static string DataTypes {
-            get {
-                return ResourceManager.GetString("DataTypes", resourceCulture);
-            }
-        }
-
-        /// <summary>
-        ///   Looks up a localized string similar to ALL,ALTER,AND,AS,AUTOINCREMENT,BETWEEN,BY,CASE,CHECK,COLLATE,COMMIT,CONSTRAINT,CREATE,CROSS,DEFAULT,DEFERRABLE,DELETE,DISTINCT,DROP,ELSE,ESCAPE,EXCEPT,FOREIGN,FROM,FULL,GROUP,HAVING,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,ISNULL,JOIN,LEFT,LIMIT,NATURAL,NOT,NOTNULL,NULL,ON,OR,ORDER,OUTER,PRIMARY,REFERENCES,RIGHT,ROLLBACK,SELECT,SET,TABLE,THEN,TO,TRANSACTION,UNION,UNIQUE,UPDATE,USING,VALUES,WHEN,WHERE.
-        /// </summary>
-        internal static string Keywords {
-            get {
-                return ResourceManager.GetString("Keywords", resourceCulture);
-            }
-        }
-
-        /// <summary>
-        ///   Looks up a localized string similar to <?xml version="1.0" encoding="utf-8" ?>
-        ///<DocumentElement>
-        ///  <MetaDataCollections>
-        ///    <CollectionName>MetaDataCollections</CollectionName>
-        ///    <NumberOfRestrictions>0</NumberOfRestrictions>
-        ///    <NumberOfIdentifierParts>0</NumberOfIdentifierParts>
-        ///  </MetaDataCollections>
-        ///  <MetaDataCollections>
-        ///    <CollectionName>DataSourceInformation</CollectionName>
-        ///    <NumberOfRestrictions>0</NumberOfRestrictions>
-        ///    <NumberOfIdentifierParts>0</NumberOfIdentifierParts>
-        ///  </MetaDataCollections>
-        ///  <MetaDataC [rest of string was truncated]";.
-        /// </summary>
-        internal static string MetaDataCollections {
-            get {
-                return ResourceManager.GetString("MetaDataCollections", resourceCulture);
-            }
-        }
-    }
-}
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SqliteDataSourceEnumerator.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SqliteDataSourceEnumerator.cs
deleted file mode 100644
index 2ac1c8a..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/SqliteDataSourceEnumerator.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-//
-// Mono.Data.Sqlite.SqliteDataSourceEnumerator.cs
-//
-// Author(s):
-//   Chris Toshok (toshok at ximian.com)
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-#if NET_2_0
-
-using System;
-using System.Data;
-using System.Data.Common;
-
-namespace Mono.Data.Sqlite
-{
-        public class SqliteDataSourceEnumerator : DbDataSourceEnumerator
-	{		
-                public SqliteDataSourceEnumerator ()
-                {
-                }
-
-                public override DataTable GetDataSources ()
-                {
-			DataTable dt = new DataTable ();
-			DataColumn col;
-
-			col = new DataColumn ("ServerName", typeof (string));
-			dt.Columns.Add (col);
-			
-			col = new DataColumn ("InstanceName", typeof (string));
-			dt.Columns.Add (col);
-
-			col = new DataColumn ("IsClustered", typeof (bool));
-			dt.Columns.Add (col);
-			
-			col = new DataColumn ("Version", typeof (string));
-			dt.Columns.Add (col);
-			
-			col = new DataColumn ("FactoryName", typeof (string));
-			dt.Columns.Add (col);
-
-			DataRow dr = dt.NewRow ();
-			dr [0] = "Sqlite Embedded Database";
-			dr [1] = "Sqlite Default Instance";
-			dr [2] = false;
-			dr [3] = "?";
-			dr [4] = "Mono.Data.Sqlite.SqliteConnectionFactory";
-			dt.Rows.Add (dr);
-			
-			return dt;
-                }
-        }
-}
-
-#endif
diff --git a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/UnsafeNativeMethods.cs b/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/UnsafeNativeMethods.cs
deleted file mode 100644
index b68a7b9..0000000
--- a/src/Hyena/Mono.Data.Sqlite/Mono.Data.Sqlite/UnsafeNativeMethods.cs
+++ /dev/null
@@ -1,311 +0,0 @@
-//
-// Mono.Data.Sqlite.UnsafeNativeMethods.cs
-//
-// Author(s):
-//   Robert Simpson (robert at blackcastlesoft.com)
-//
-// Adapted and modified for the Mono Project by
-//   Marek Habersack (grendello at gmail.com)
-//
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-// Copyright (C) 2007 Marek Habersack
-//
-// 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 above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// 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.
-//
-
-/********************************************************
- * ADO.NET 2.0 Data Provider for Sqlite Version 3.X
- * Written by Robert Simpson (robert at blackcastlesoft.com)
- *
- * Released to the public domain, use at your own risk!
- ********************************************************/
-#if NET_2_0
-namespace Mono.Data.Sqlite
-{
-  using System;
-  using System.Security;
-  using System.Runtime.InteropServices;
-
-#if !PLATFORM_COMPACTFRAMEWORK
-  [SuppressUnmanagedCodeSecurity]
-#endif
-  internal sealed class UnsafeNativeMethods
-  {
-    private const string SQLITE_DLL = "sqlite3";
-
-    private UnsafeNativeMethods()
-    {
-    }
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_sleep(uint dwMilliseconds);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_libversion();
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_free(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_open(byte[] utf8Filename, out IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_interrupt(IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_close(IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_exec(IntPtr db, byte[] strSql, IntPtr pvCallback, IntPtr pvParam, out IntPtr errMsg, out int len);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_errmsg(IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_changes(IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_busy_timeout(IntPtr db, int ms);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_prepare_v2(IntPtr db, IntPtr pSql, int nBytes, out IntPtr stmt, out IntPtr ptrRemain);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_prepare(IntPtr db, IntPtr pSql, int nBytes, out IntPtr stmt, out IntPtr ptrRemain);
-	
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_blob(IntPtr stmt, int index, Byte[] value, int nSize, IntPtr nTransient);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_double(IntPtr stmt, int index, double value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_int(IntPtr stmt, int index, int value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_int64(IntPtr stmt, int index, long value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_null(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_text(IntPtr stmt, int index, byte[] value, int nlen, IntPtr pvReserved);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_parameter_count(IntPtr stmt);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_bind_parameter_name(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_bind_parameter_index(IntPtr stmt, byte[] strName);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_column_count(IntPtr stmt);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_name(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_decltype(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_step(IntPtr stmt);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern double sqlite3_column_double(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_column_int(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern Int64 sqlite3_column_int64(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_text(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_blob(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_column_bytes(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern TypeAffinity sqlite3_column_type(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_finalize(IntPtr stmt);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_reset(IntPtr stmt);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_create_collation(IntPtr db, byte[] strName, int eTextRep, IntPtr ctx, SqliteCollation fcompare);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_create_function(IntPtr db, byte[] strName, int nArgs, int eTextRep, IntPtr app, SqliteCallback func, SqliteCallback fstep, SqliteFinalCallback ffinal);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_aggregate_count(IntPtr context);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_value_blob(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_value_bytes(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern double sqlite3_value_double(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_value_int(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern Int64 sqlite3_value_int64(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_value_text(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern TypeAffinity sqlite3_value_type(IntPtr p);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_blob(IntPtr context, byte[] value, int nSize, IntPtr pvReserved);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_double(IntPtr context, double value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_error(IntPtr context, byte[] strErr, int nLen);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_int(IntPtr context, int value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_int64(IntPtr context, Int64 value);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_null(IntPtr context);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern void sqlite3_result_text(IntPtr context, byte[] value, int nLen, IntPtr pvReserved);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_aggregate_context(IntPtr context, int nBytes);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_table_column_metadata(IntPtr db, byte[] dbName, byte[] tblName, byte[] colName, out IntPtr ptrDataType, out IntPtr ptrCollSeq, out int notNull, out int primaryKey, out int autoInc);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_database_name(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_database_name16(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_table_name(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_table_name16(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_origin_name(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_origin_name16(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_text16(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern int sqlite3_open16(string utf16Filename, out IntPtr db);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_errmsg16(IntPtr db);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern int sqlite3_prepare16_v2(IntPtr db, IntPtr pSql, int sqlLen, out IntPtr stmt, out IntPtr ptrRemain);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern int sqlite3_bind_text16(IntPtr stmt, int index, string value, int nlen, int nTransient);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_name16(IntPtr stmt, int index);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_column_decltype16(IntPtr stmt, int index, out int len);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern int sqlite3_create_collation16(IntPtr db, string strName, int eTextRep, IntPtr ctx, SqliteCollation fcompare);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern int sqlite3_create_function16(IntPtr db, string strName, int nArgs, int eTextRep, IntPtr app, SqliteCallback func, SqliteCallback funcstep, SqliteFinalCallback funcfinal);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_value_text16(IntPtr p);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern void sqlite3_result_error16(IntPtr context, string strName, int nLen);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
-    internal static extern void sqlite3_result_text16(IntPtr context, string strName, int nLen, IntPtr pvReserved);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode, SetLastError = true)]
-    internal static extern int sqlite3_encryptfile(string fileName);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode, SetLastError = true)]
-    internal static extern int sqlite3_decryptfile(string fileName);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode, SetLastError = true)]
-    internal static extern int sqlite3_encryptedstatus(string fileName, out int fileStatus);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode, SetLastError = true)]
-    internal static extern int sqlite3_compressfile(string fileName);
-
-    [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode, SetLastError = true)]
-    internal static extern int sqlite3_decompressfile(string fileName);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_key(IntPtr db, byte[] key, int keylen);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_rekey(IntPtr db, byte[] key, int keylen);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_update_hook(IntPtr db, SqliteUpdateCallback func);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_commit_hook(IntPtr db, SqliteCommitCallback func);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern IntPtr sqlite3_rollback_hook(IntPtr db, SqliteRollbackCallback func);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_cursor_rowid(IntPtr stmt, int cursor, out long rowid);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern int sqlite3_table_cursor(IntPtr stmt, int db, int tableRootPage);
-
-    [DllImport(SQLITE_DLL)]
-    internal static extern long sqlite3_last_insert_rowid(IntPtr db);
-  }
-}
-#endif
diff --git a/src/Hyena/build/Makefile.in b/src/Hyena/build/Makefile.in
index b804a84..1f66610 100644
--- a/src/Hyena/build/Makefile.in
+++ b/src/Hyena/build/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -77,8 +79,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(bansheedir)"
-bansheeSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(banshee_SCRIPTS)
 SOURCES =
 DIST_SOURCES =
@@ -91,10 +114,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -212,29 +263,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -269,6 +301,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -310,9 +343,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -422,14 +458,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/build/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/build/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/build/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/build/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -447,25 +483,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-bansheeSCRIPTS: $(banshee_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(bansheedir)" || $(MKDIR_P) "$(DESTDIR)$(bansheedir)"
-	@list='$(banshee_SCRIPTS)'; for p in $$list; do \
+	@list='$(banshee_SCRIPTS)'; test -n "$(bansheedir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(bansheeSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bansheedir)/$$f'"; \
-	    $(bansheeSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bansheedir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bansheedir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bansheedir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-bansheeSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(banshee_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(bansheedir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(bansheedir)/$$f"; \
-	done
+	@list='$(banshee_SCRIPTS)'; test -n "$(bansheedir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bansheedir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bansheedir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -480,7 +532,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -497,7 +549,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -505,7 +557,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -531,16 +583,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -548,14 +600,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -567,7 +619,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -576,29 +628,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -619,29 +676,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -675,6 +747,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -694,6 +767,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -702,18 +777,28 @@ install-data-am: install-bansheeSCRIPTS
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -734,8 +819,8 @@ ps-am:
 
 uninstall-am: uninstall-bansheeSCRIPTS
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -771,6 +856,7 @@ $(ADDIN_XML_STRING_EXTRACTOR_ASSEMBLY): AddinXmlStringExtractor.cs
 
 $(GOBJECT_INTPTR_CTOR_VERIFIER_ASSEMBLY): GObjectIntPtrCtorVerifier.cs
 	$(MCS) $(GLIBSHARP_LIBS) -out:$@ $<
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/build/m4/Makefile.in b/src/Hyena/build/m4/Makefile.in
index 313b7bd..0f90156 100644
--- a/src/Hyena/build/m4/Makefile.in
+++ b/src/Hyena/build/m4/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -195,29 +198,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -252,6 +236,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -293,9 +278,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -384,14 +372,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/build/m4/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/build/m4/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/build/m4/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/build/m4/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -409,6 +397,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -438,13 +427,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -472,6 +465,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -491,6 +485,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -499,18 +495,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -544,6 +550,7 @@ uninstall-am:
 	maintainer-clean-generic mostlyclean mostlyclean-generic \
 	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Hyena/build/pkg-config/Makefile.in b/src/Hyena/build/pkg-config/Makefile.in
index 27817d3..ff93f55 100644
--- a/src/Hyena/build/pkg-config/Makefile.in
+++ b/src/Hyena/build/pkg-config/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -83,9 +86,23 @@ am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
     *) f=$$p;; \
   esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
-pkgconfigDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(pkgconfig_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -205,29 +222,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -262,6 +260,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -303,9 +302,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -396,14 +398,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Hyena/build/pkg-config/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Hyena/build/pkg-config/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Hyena/build/pkg-config/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Hyena/build/pkg-config/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -421,6 +423,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -430,20 +433,23 @@ clean-libtool:
 install-pkgconfigDATA: $(pkgconfig_DATA)
 	@$(NORMAL_INSTALL)
 	test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
-	@list='$(pkgconfig_DATA)'; for p in $$list; do \
+	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f=$(am__strip_dir) \
-	  echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
-	  $(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
 	done
 
 uninstall-pkgconfigDATA:
 	@$(NORMAL_UNINSTALL)
-	@list='$(pkgconfig_DATA)'; for p in $$list; do \
-	  f=$(am__strip_dir) \
-	  echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
-	done
+	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	test -n "$$files" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
 tags: TAGS
 TAGS:
 
@@ -467,13 +473,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -505,6 +515,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -524,6 +535,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -532,18 +545,28 @@ install-data-am: install-pkgconfigDATA
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -581,6 +604,7 @@ uninstall-am: uninstall-pkgconfigDATA
 
 @HYENA_PKG_CONFIG_TRUE@%.pc: %.pc.in
 @HYENA_PKG_CONFIG_TRUE@	sed "s,\@VERSION\@,$(VERSION),g; s,\@prefix\@,$(prefix),g; s,\@libdir\@,$(libdir),g; s,\@PACKAGE\@,$(PACKAGE),g" < $< > $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Lastfm.Gui/Makefile.in b/src/Libraries/Lastfm.Gui/Makefile.in
index 614e3e9..183ea0d 100644
--- a/src/Libraries/Lastfm.Gui/Makefile.in
+++ b/src/Libraries/Lastfm.Gui/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -425,12 +433,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -482,7 +486,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -609,14 +613,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Lastfm.Gui/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Lastfm.Gui/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Lastfm.Gui/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Lastfm.Gui/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -634,25 +638,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -682,13 +702,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -720,6 +744,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -740,6 +765,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -747,21 +774,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -783,7 +819,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -848,6 +883,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Lastfm/Makefile.in b/src/Libraries/Lastfm/Makefile.in
index 03ca74c..52ea798 100644
--- a/src/Libraries/Lastfm/Makefile.in
+++ b/src/Libraries/Lastfm/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -433,12 +441,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -490,7 +494,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -617,14 +621,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Lastfm/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Lastfm/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Lastfm/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Lastfm/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -642,25 +646,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -690,13 +710,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -728,6 +752,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -748,6 +773,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -755,21 +782,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -791,7 +827,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -862,6 +897,7 @@ test-lastfm: Test.cs
 	mv TestLastfm.exe $(top_builddir)/bin/
 	@pushd $(top_builddir)/bin/; mono --debug TestLastfm.exe; \
 	popd;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Makefile.in b/src/Libraries/Makefile.in
index 17eb7b8..4db1daf 100644
--- a/src/Libraries/Makefile.in
+++ b/src/Libraries/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -75,6 +77,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -86,10 +89,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -207,29 +238,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -264,6 +276,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -305,9 +318,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -403,14 +419,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -428,6 +444,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -442,7 +459,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -459,7 +476,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -467,7 +484,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -493,16 +510,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -510,14 +527,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -529,7 +546,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -538,29 +555,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -581,29 +603,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -633,6 +670,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -652,6 +690,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -660,18 +700,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -692,8 +742,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -709,6 +759,7 @@ uninstall-am:
 	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am
 
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Migo/Makefile.in b/src/Libraries/Migo/Makefile.in
index ee1cedf..db56e31 100644
--- a/src/Libraries/Migo/Makefile.in
+++ b/src/Libraries/Migo/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -488,12 +496,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -545,7 +549,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -672,14 +676,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Migo/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Migo/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Migo/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Migo/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -697,25 +701,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -745,13 +765,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -783,6 +807,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -803,6 +828,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -810,21 +837,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -846,7 +882,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -911,6 +946,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Migo/Migo.Syndication/EnclosureManager.cs b/src/Libraries/Migo/Migo.Syndication/EnclosureManager.cs
index 520ad41..16e591f 100644
--- a/src/Libraries/Migo/Migo.Syndication/EnclosureManager.cs
+++ b/src/Libraries/Migo/Migo.Syndication/EnclosureManager.cs
@@ -29,7 +29,6 @@
 
 using System;
 using System.IO;
-using System.Data;
 using System.Threading;
 using System.Collections.Generic;
 using System.Collections.ObjectModel;
diff --git a/src/Libraries/Migo/Migo.Syndication/FeedsManager.cs b/src/Libraries/Migo/Migo.Syndication/FeedsManager.cs
index 185773e..7c96cf4 100644
--- a/src/Libraries/Migo/Migo.Syndication/FeedsManager.cs
+++ b/src/Libraries/Migo/Migo.Syndication/FeedsManager.cs
@@ -37,7 +37,6 @@
 
 using System;
 using System.IO;
-using System.Data;
 using System.Threading;
 using System.Collections.Generic;
 using System.Collections.ObjectModel;
diff --git a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/EnclosuresTableManager.cs b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/EnclosuresTableManager.cs
index aedc431..a215d9b 100644
--- a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/EnclosuresTableManager.cs
+++ b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/EnclosuresTableManager.cs
@@ -27,7 +27,6 @@
  */
 
 using System;
-using System.Data;
 using System.Collections;
 using System.Collections.Generic;
 
diff --git a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/FeedsTableManager.cs b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/FeedsTableManager.cs
index 6a28a3e..e8973bc 100644
--- a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/FeedsTableManager.cs
+++ b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/FeedsTableManager.cs
@@ -27,8 +27,6 @@
  */
 
 using System;
-using System.Data;
-
 using System.Collections;
 using System.Collections.Generic;
 using System.Collections.ObjectModel;
diff --git a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/ItemsTableManager.cs b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/ItemsTableManager.cs
index 31dd51e..62f6b49 100644
--- a/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/ItemsTableManager.cs
+++ b/src/Libraries/Migo/Migo.Syndication/Migo.Syndication.Data/TablesManagers/ItemsTableManager.cs
@@ -27,7 +27,6 @@
  */
 
 using System;
-using System.Data;
 using System.Collections;
 using System.Collections.Generic;
 
diff --git a/src/Libraries/Migo/Migo.Syndication/MigoModelProvider.cs b/src/Libraries/Migo/Migo.Syndication/MigoModelProvider.cs
index 7c330f6..e7f5c4d 100644
--- a/src/Libraries/Migo/Migo.Syndication/MigoModelProvider.cs
+++ b/src/Libraries/Migo/Migo.Syndication/MigoModelProvider.cs
@@ -69,7 +69,7 @@ namespace Migo.Syndication
             }
         }
 
-        public override T Load (System.Data.IDataReader reader)
+        public override T Load (IDataReader reader)
         {
             return GetCached (PrimaryKeyFor (reader)) ?? CacheResult (base.Load (reader));
         }
diff --git a/src/Libraries/Mono.Media/Makefile.in b/src/Libraries/Mono.Media/Makefile.in
index a54a5cd..d486ace 100644
--- a/src/Libraries/Mono.Media/Makefile.in
+++ b/src/Libraries/Mono.Media/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -426,12 +434,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -483,7 +487,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -610,14 +614,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Mono.Media/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Mono.Media/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Mono.Media/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Mono.Media/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -635,25 +639,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -683,13 +703,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -721,6 +745,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -741,6 +766,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -748,21 +775,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -784,7 +820,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -849,6 +884,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/Mtp/Makefile.in b/src/Libraries/Mtp/Makefile.in
index 41e97bc..175174a 100644
--- a/src/Libraries/Mtp/Makefile.in
+++ b/src/Libraries/Mtp/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -83,8 +85,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = Mtp.dll.config
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -205,29 +228,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -262,6 +266,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -303,9 +308,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -434,12 +442,8 @@ SOURCES = \
 @ENABLE_MTP_TRUE at LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 @ENABLE_MTP_TRUE at DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
- at ENABLE_MTP_TRUE@REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
- at ENABLE_MTP_TRUE@LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
- at ENABLE_MTP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+ at ENABLE_MTP_TRUE@REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 @ENABLE_MTP_TRUE at LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 @ENABLE_MTP_TRUE at LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -491,7 +495,7 @@ SOURCES = \
 
 @ENABLE_MTP_TRUE at LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 @ENABLE_MTP_TRUE at LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
- at ENABLE_MTP_TRUE@REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+ at ENABLE_MTP_TRUE@REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 @ENABLE_MTP_TRUE at LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 @ENABLE_MTP_TRUE at LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 @ENABLE_MTP_TRUE at REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -621,14 +625,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/Mtp/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/Mtp/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/Mtp/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/Mtp/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -646,27 +650,43 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 Mtp.dll.config: $(top_builddir)/config.status $(srcdir)/Mtp.dll.config.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -696,13 +716,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -734,6 +758,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -756,6 +781,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -763,21 +790,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -799,7 +835,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -864,6 +899,7 @@ uninstall-am: uninstall-moduleSCRIPTS
 @ENABLE_MTP_TRUE at uninstall-hook: $(THEME_ICONS_SOURCE)
 @ENABLE_MTP_TRUE@	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 @ENABLE_MTP_TRUE@	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Libraries/MusicBrainz/Makefile.in b/src/Libraries/MusicBrainz/Makefile.in
index 64da0c2..cfdfd2b 100644
--- a/src/Libraries/MusicBrainz/Makefile.in
+++ b/src/Libraries/MusicBrainz/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
 
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -80,8 +82,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 am__installdirs = "$(DESTDIR)$(moduledir)"
-moduleSCRIPT_INSTALL = $(INSTALL_SCRIPT)
 SCRIPTS = $(module_SCRIPTS)
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -202,29 +225,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -259,6 +263,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -300,9 +305,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -436,12 +444,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -493,7 +497,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -620,14 +624,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Libraries/MusicBrainz/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Libraries/MusicBrainz/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Libraries/MusicBrainz/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Libraries/MusicBrainz/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -645,25 +649,41 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-moduleSCRIPTS: $(module_SCRIPTS)
 	@$(NORMAL_INSTALL)
 	test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || list=; \
+	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  if test -f $$d$$p; then \
-	    f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	    echo " $(moduleSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(moduledir)/$$f'"; \
-	    $(moduleSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(moduledir)/$$f"; \
-	  else :; fi; \
-	done
+	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n' \
+	    -e 'h;s|.*|.|' \
+	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+	      if (++n[d] == $(am__install_max)) { \
+		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+	    else { print "f", d "/" $$4, $$1 } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	     test -z "$$files" || { \
+	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(moduledir)$$dir'"; \
+	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(moduledir)$$dir" || exit $$?; \
+	     } \
+	; done
 
 uninstall-moduleSCRIPTS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(module_SCRIPTS)'; for p in $$list; do \
-	  f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
-	  echo " rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
-	  rm -f "$(DESTDIR)$(moduledir)/$$f"; \
-	done
+	@list='$(module_SCRIPTS)'; test -n "$(moduledir)" || exit 0; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	       sed -e 's,.*/,,;$(transform)'`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(moduledir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(moduledir)" && rm -f $$files
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -693,13 +713,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -731,6 +755,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -751,6 +776,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -758,21 +785,30 @@ info-am:
 install-data-am: install-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -794,7 +830,6 @@ ps-am:
 uninstall-am: uninstall-moduleSCRIPTS
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
 .MAKE: install-am install-data-am install-strip uninstall-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
@@ -859,6 +894,7 @@ install-data-hook: $(THEME_ICONS_SOURCE)
 uninstall-hook: $(THEME_ICONS_SOURCE)
 	@$(INSTALL_ICONS) -u "$(DESTDIR)$(pkgdatadir)" "$(srcdir)" $(THEME_ICONS_RELATIVE)
 	$(EXTRA_UNINSTALL_HOOK)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/src/Makefile.in b/src/Makefile.in
index 57e6200..ee1e296 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = AssemblyInfo.cs
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -87,10 +90,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -208,29 +239,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -265,6 +277,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -306,9 +319,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -404,14 +420,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -429,6 +445,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 AssemblyInfo.cs: $(top_builddir)/config.status $(srcdir)/AssemblyInfo.cs.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
@@ -445,7 +462,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -462,7 +479,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -470,7 +487,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -496,16 +513,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -513,14 +530,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -532,7 +549,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -541,29 +558,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -584,29 +606,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -636,6 +673,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -655,6 +693,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -663,18 +703,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -695,8 +745,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -717,6 +767,7 @@ run:
 	@pushd $(top_builddir); \
 	make run; \
 	popd;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/tests/Analyzer/Makefile.in b/tests/Analyzer/Makefile.in
index 5bdd489..02d3924 100644
--- a/tests/Analyzer/Makefile.in
+++ b/tests/Analyzer/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -196,29 +199,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -253,6 +237,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -294,9 +279,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -407,12 +395,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -464,7 +448,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -568,14 +552,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  tests/Analyzer/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  tests/Analyzer/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Analyzer/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/Analyzer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -593,6 +577,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -622,13 +607,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -657,6 +646,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -676,6 +666,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -684,18 +676,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -734,6 +736,7 @@ $(ANALYZER_EXE): Analyzer.cs
 	$(MCS) -r:System.Xml.Linq -r:$(DIR_BIN)/Hyena.dll -debug+ -out:$@ $<
 
 all: $(ALL_TARGETS)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 53f8dd6..d6bed8e 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -9,6 +9,7 @@ if ENABLE_TESTS
 TEST_ASSEMBLIES = \
 	Hyena.dll \
 	Hyena.Gui.dll \
+	Hyena.Data.Sqlite.dll \
 	Migo.dll \
 	Mono.Media.dll \
 	Banshee.Core.dll \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 07b6a7f..b4dba35 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -78,6 +80,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -89,9 +92,37 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	ps-recursive uninstall-recursive
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+	distdir
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -209,29 +240,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -266,6 +278,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -307,9 +320,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -420,12 +436,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -477,7 +489,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -573,7 +585,8 @@ DIST_SUBDIRS = \
 	Analyzer \
 	Performance
 
- at ENABLE_TESTS_TRUE@TEST_ASSEMBLIES = Hyena.dll Hyena.Gui.dll Migo.dll \
+ at ENABLE_TESTS_TRUE@TEST_ASSEMBLIES = Hyena.dll Hyena.Gui.dll \
+ at ENABLE_TESTS_TRUE@	Hyena.Data.Sqlite.dll Migo.dll \
 @ENABLE_TESTS_TRUE@	Mono.Media.dll Banshee.Core.dll \
 @ENABLE_TESTS_TRUE@	Banshee.Gnome.dll Banshee.Services.dll \
 @ENABLE_TESTS_TRUE@	Banshee.Fixup.dll Banshee.Dap.Mtp.dll \
@@ -589,14 +602,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  tests/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  tests/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -614,6 +627,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -628,7 +642,7 @@ clean-libtool:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -645,7 +659,7 @@ $(RECURSIVE_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
@@ -653,7 +667,7 @@ $(RECURSIVE_TARGETS):
 	fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-	@failcom='exit 1'; \
+	@fail= failcom='exit 1'; \
 	for f in x $$MAKEFLAGS; do \
 	  case $$f in \
 	    *=* | --[!k]*);; \
@@ -679,16 +693,16 @@ $(RECURSIVE_CLEAN_TARGETS):
 	  else \
 	    local_target="$$target"; \
 	  fi; \
-	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
 	done
 ctags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -696,14 +710,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
 	mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
+	set x; \
 	here=`pwd`; \
 	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 	  include_option=--etags-include; \
@@ -715,7 +729,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test ! -f $$subdir/TAGS || \
-	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
@@ -724,29 +738,34 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 	  test -n "$$unique" || unique=$$empty_fix; \
-	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	    $$tags $$unique; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
 	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
-	tags=; \
 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
 	  done | \
 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	test -z "$(CTAGS_ARGS)$$unique" \
 	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$tags $$unique
+	     $$unique
 
 GTAGS:
 	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && cd $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) $$here
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -767,29 +786,44 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
 	    test -d "$(distdir)/$$subdir" \
 	    || $(MKDIR_P) "$(distdir)/$$subdir" \
 	    || exit 1; \
-	    distdir=`$(am__cd) $(distdir) && pwd`; \
-	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-	    (cd $$subdir && \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$top_distdir" \
-	        distdir="$$distdir/$$subdir" \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
 		am__remove_distdir=: \
 		am__skip_length_check=: \
+		am__skip_mode_fix=: \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -819,6 +853,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -838,6 +873,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -846,18 +883,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -878,8 +925,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-	install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+	install-am install-strip tags-recursive
 
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am check check-am clean clean-generic clean-libtool \
@@ -908,6 +955,7 @@ uninstall-am:
 @ENABLE_TESTS_TRUE@			export TEST_ASSEMBLIES="$$i"; $(RUNNER); \
 @ENABLE_TESTS_TRUE@		fi; \
 @ENABLE_TESTS_TRUE@	done;
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/tests/Performance/Makefile.in b/tests/Performance/Makefile.in
index ed89a77..20f5e76 100644
--- a/tests/Performance/Makefile.in
+++ b/tests/Performance/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
+# Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
 @SET_MAKE@
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -76,6 +78,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -196,29 +199,10 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 IPODSHARP_ASSEMBLIES = @IPODSHARP_ASSEMBLIES@
 IPODSHARP_CFLAGS = @IPODSHARP_CFLAGS@
 IPODSHARP_LIBS = @IPODSHARP_LIBS@
@@ -253,6 +237,7 @@ MDASSEMBLER = @MDASSEMBLER@
 MEEGO_PANEL_CFLAGS = @MEEGO_PANEL_CFLAGS@
 MEEGO_PANEL_LIBS = @MEEGO_PANEL_LIBS@
 MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
 MONO = @MONO@
 MONODOCER = @MONODOCER@
 MONOTORRENT_ASSEMBLIES = @MONOTORRENT_ASSEMBLIES@
@@ -294,9 +279,12 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POFILES = @POFILES@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
@@ -407,12 +395,8 @@ LINK_MONO_ADDINS_DEPS = $(MONO_ADDINS_LIBS)
 LINK_MONO_ADDINS_SETUP_DEPS = $(MONO_ADDINS_SETUP_LIBS)
 DIR_BIN = $(top_builddir)/bin
 
-# Mono.Data
-REF_SQLITE = -r:System -r:System.Data -r:System.Transactions
-LINK_SQLITE = -r:System.Data -r:$(DIR_BIN)/Mono.Data.Sqlite.dll
-
 # Hyena
-REF_HYENA = $(LINK_SYSTEM) $(LINK_SQLITE) $(LINK_MONO_POSIX)
+REF_HYENA = $(LINK_SYSTEM) $(LINK_MONO_POSIX)
 LINK_HYENA = -r:$(DIR_BIN)/Hyena.dll -r:$(DIR_BIN)/Hyena.Data.Sqlite.dll
 LINK_HYENA_DEPS = $(REF_HYENA) $(LINK_HYENA)
 
@@ -464,7 +448,7 @@ REF_BANSHEE_CORE = $(LINK_HYENA_DEPS) $(LINK_MONO_POSIX) $(LINK_GLIB) \
 
 LINK_BANSHEE_CORE = -r:$(DIR_BIN)/Banshee.Core.dll
 LINK_BANSHEE_CORE_DEPS = $(REF_BANSHEE_CORE) $(LINK_BANSHEE_CORE)
-REF_BANSHEE_SERVICES = $(LINK_SQLITE) $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
+REF_BANSHEE_SERVICES = $(LINK_BANSHEE_CORE_DEPS) $(LINK_MONO_MEDIA_DEPS) $(LINK_LASTFM_DEPS) $(LINK_MUSICBRAINZ_DEPS)
 LINK_BANSHEE_SERVICES = -r:$(DIR_BIN)/Banshee.Services.dll
 LINK_BANSHEE_SERVICES_DEPS = $(REF_BANSHEE_SERVICES) $(LINK_BANSHEE_SERVICES)
 REF_BANSHEE_WIDGETS = $(LINK_MONO_POSIX) $(LINK_HYENA_GUI_DEPS)
@@ -568,14 +552,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-		&& exit 0; \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  tests/Performance/Makefile'; \
-	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  tests/Performance/Makefile
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Performance/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/Performance/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -593,6 +577,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -622,13 +607,17 @@ distdir: $(DISTFILES)
 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
 	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 	    fi; \
-	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 	  else \
-	    test -f $(distdir)/$$file \
-	    || cp -p $$d/$$file $(distdir)/$$file \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
 	    || exit 1; \
 	  fi; \
 	done
@@ -657,6 +646,7 @@ clean-generic:
 
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -676,6 +666,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -684,18 +676,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -737,6 +739,7 @@ $(PERFORMANCE_EXE): PerformanceTests.cs
 	$(MCS) -target:exe -r:$(DIR_BIN)/Hyena.dll $(NUNIT_LIBS) $(LINK_BANSHEE_THICKCLIENT_DEPS) -out:$@ $<
 
 all: $(ALL_TARGETS)
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:

-- 
banshee



More information about the Pkg-cli-apps-commits mailing list