diff -Naur java-package-0.27.orig/debian/changelog java-package-0.27local0/debian/changelog
--- java-package-0.27.orig/debian/changelog	2005-11-08 17:23:37.000000000 +0000
+++ java-package-0.27local0/debian/changelog	2006-12-15 21:28:16.000000000 +0000
@@ -1,3 +1,10 @@
+java-package (0.27local0) unstable; urgency=low
+
+  * Backported Matti Lindell's (mlind@cs.joensuu.fi) patch to add 
+    support for Sun Java 6 JREs and JDKs.
+
+ -- Dan Munckton <munckfish@gmail.com>  Fri, 15 Dec 2006 21:22:29 +0000
+
 java-package (0.27) unstable; urgency=low
 
   * Added support for IBM Java2 5.0 JREs and JDKs (Closes: #337129)
diff -Naur java-package-0.27.orig/lib/sun-j2re.sh java-package-0.27local0/lib/sun-j2re.sh
--- java-package-0.27.orig/lib/sun-j2re.sh	2005-11-07 05:27:24.000000000 +0000
+++ java-package-0.27local0/lib/sun-j2re.sh	2006-12-15 21:21:56.000000000 +0000
@@ -35,6 +35,11 @@
 	    j2se_expected_min_size=16 # 16542512 bytes
 	    found=true
 	    ;;
+	"jre-6-linux-i586.bin") # SUPPORTED
+	    j2se_version=1.6.0
+	    j2se_expected_min_size=18 # 18964005 bytes
+	    found=true
+	    ;;
       esac
       ;;
     amd64|x86_64-linux)
@@ -49,6 +54,11 @@
 	    j2se_expected_min_size=60 # 69936 kB
 	    found=true
 	    ;;
+	"jre-6-linux-amd64.bin") # SUPPORTED
+	    j2se_version=1.6.0
+	    j2se_expected_min_size=17 # 17555 kB
+	    found=true
+	    ;;
       esac
       ;;
   esac
diff -Naur java-package-0.27.orig/lib/sun-j2sdk-doc.sh java-package-0.27local0/lib/sun-j2sdk-doc.sh
--- java-package-0.27.orig/lib/sun-j2sdk-doc.sh	2005-08-29 23:53:14.000000000 +0100
+++ java-package-0.27local0/lib/sun-j2sdk-doc.sh	2006-12-15 21:21:56.000000000 +0000
@@ -27,6 +27,11 @@
 	    j2se_expected_min_size=44 # 44566 kB
 	    found=true
 	    ;;
+	"jdk-6-doc.zip") # SUPPORTED
+	    j2se_version=1.6.0
+	    j2se_expected_min_size=53 # 54613 kB
+	    found=true
+	    ;;
       esac
   if [[ -n "$found" ]]; then
 	cat << EOF
diff -Naur java-package-0.27.orig/lib/sun-j2sdk.sh java-package-0.27local0/lib/sun-j2sdk.sh
--- java-package-0.27.orig/lib/sun-j2sdk.sh	2005-07-09 13:33:37.000000000 +0100
+++ java-package-0.27local0/lib/sun-j2sdk.sh	2006-12-15 21:21:56.000000000 +0000
@@ -35,6 +35,11 @@
 	    j2se_expected_min_size=130
 	    found=true
 	    ;;
+	"jdk-6-linux-i586.bin") # SUPPORTED
+	    j2se_version=1.6.0
+	    j2se_expected_min_size=60 # 61209 kB
+	    found=true
+	    ;;
       esac
       ;;
     "ia64-linux")
@@ -68,6 +73,11 @@
 	    j2se_expected_min_size=105
 	    found=true
 	    ;;
+	"jdk-6-linux-amd64.bin") # SUPPORTED
+	    j2se_version=1.6.0
+	    j2se_expected_min_size=54 # 54987 kB
+	    found=true
+	    ;;
       esac
       ;;
   esac
diff -Naur java-package-0.27.orig/sun-j2sdk1.6/install java-package-0.27local0/sun-j2sdk1.6/install
--- java-package-0.27.orig/sun-j2sdk1.6/install	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.27local0/sun-j2sdk1.6/install	2006-12-15 21:21:56.000000000 +0000
@@ -0,0 +1,88 @@
+suffix=j2sdk1.6-sun
+j2se_base="/usr/lib/$suffix"
+priority=315
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+# alternative <program>
+function program_alternative() {
+    local program="$1"
+    update-alternatives \
+	--install "/usr/bin/$program" "$program" \
+	"$j2se_base/bin/$program" "$priority" \
+	--slave "/usr/share/man/man1/$program.1.gz" "$program.1.gz" \
+	"$j2se_base/man/man1/$program.1.gz"
+}
+# kinit, klist, and ktab not installed at this
+# time; handling of /etc/krb5.conf not addressed
+# JRE-specific alternatives with JDKs cannot be 
+# handled by our current approach
+program_alternative appletviewer
+program_alternative apt
+program_alternative ControlPanel
+program_alternative extcheck
+program_alternative HtmlConverter
+program_alternative idlj
+program_alternative jar
+program_alternative jarsigner
+program_alternative java
+program_alternative javac
+program_alternative javadoc
+program_alternative javah
+program_alternative javap
+program_alternative java-rmi.cgi
+program_alternative javaws
+program_alternative jconsole
+program_alternative jdb
+program_alternative jinfo
+program_alternative jmap
+program_alternative jps
+program_alternative jsadebugd
+program_alternative jstack
+program_alternative jstat
+program_alternative jstatd
+program_alternative keytool
+program_alternative native2ascii
+program_alternative orbd
+program_alternative pack200
+program_alternative policytool
+program_alternative rmic
+program_alternative rmid
+program_alternative rmiregistry
+program_alternative serialver
+program_alternative servertool
+program_alternative tnameserv
+program_alternative unpack200
+
+# derive the architecture-specific 
+# directory for the plugin
+arch_dir="$(dpkg --print-architecture)"
+
+# assemble the plugin path
+plugin_dir="$j2se_base/jre/plugin/$arch_dir"
+
+# netscape
+netscape_dir="/usr/lib/netscape/plugins-libc6"
+[ -d "$netscape_dir" ] || install -d -m 755 "$netscape_dir"
+update-alternatives \
+    --install "$netscape_dir/libjavaplugin.so" \
+	"netscape-javaplugin.so" \
+    	"$plugin_dir/ns4/libjavaplugin.so" "$priority"
+
+# mozilla
+mozilla_dir="/usr/lib/mozilla/plugins"
+[ -d "$mozilla_dir" ] || install -d -m 755 "$mozilla_dir"
+update-alternatives \
+    --install "$mozilla_dir/libjavaplugin.so" \
+	"mozilla-javaplugin.so" \
+    	"$plugin_dir/ns7/libjavaplugin_oji.so" "$priority"
+
+# firefox
+firefox_dir="/usr/lib/mozilla-firefox/plugins"
+[ -d "$firefox_dir" ] || install -d -m 755 "$firefox_dir"
+update-alternatives \
+    --install "$firefox_dir/libjavaplugin.so" \
+	"firefox-javaplugin.so" \
+    	"$plugin_dir/ns7/libjavaplugin_oji.so" "$priority"
diff -Naur java-package-0.27.orig/sun-j2sdk1.6/remove java-package-0.27local0/sun-j2sdk1.6/remove
--- java-package-0.27.orig/sun-j2sdk1.6/remove	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.27local0/sun-j2sdk1.6/remove	2006-12-15 21:21:56.000000000 +0000
@@ -0,0 +1,69 @@
+suffix=j2sdk1.6-sun
+j2se_base="/usr/lib/$suffix"
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+# alternative <program>
+function program_alternative() {
+    local program="$1"
+    update-alternatives \
+	--remove "$program" "$j2se_base/bin/$program"
+}
+
+program_alternative appletviewer
+program_alternative apt
+program_alternative ControlPanel
+program_alternative extcheck
+program_alternative HtmlConverter
+program_alternative idlj
+program_alternative jar
+program_alternative jarsigner
+program_alternative java
+program_alternative javac
+program_alternative javadoc
+program_alternative javah
+program_alternative javap
+program_alternative java-rmi.cgi
+program_alternative javaws
+program_alternative jconsole
+program_alternative jdb
+program_alternative jinfo
+program_alternative jmap
+program_alternative jps
+program_alternative jsadebugd
+program_alternative jstack
+program_alternative jstat
+program_alternative jstatd
+program_alternative keytool
+program_alternative native2ascii
+program_alternative orbd
+program_alternative pack200
+program_alternative policytool
+program_alternative rmic
+program_alternative rmid
+program_alternative rmiregistry
+program_alternative serialver
+program_alternative servertool
+program_alternative tnameserv
+program_alternative unpack200
+
+# derive the architecture-specific 
+# directory for the plugin
+arch_dir="$(dpkg --print-architecture)"
+
+# assemble the plugin path
+plugin_dir="$j2se_base/plugin/$arch_dir"
+
+# netscape
+update-alternatives \
+    --remove "netscape-javaplugin.so" "$plugin_dir/ns4/libjavaplugin.so"
+
+# mozilla
+update-alternatives \
+    --remove "mozilla-javaplugin.so" "$plugin_dir/ns7/libjavaplugin_oji.so"
+
+# firefox
+update-alternatives \
+    --remove "firefox-javaplugin.so" "$plugin_dir/ns7/libjavaplugin_oji.so"
diff -Naur java-package-0.27.orig/sun-j2sdk1.6-doc/install java-package-0.27local0/sun-j2sdk1.6-doc/install
--- java-package-0.27.orig/sun-j2sdk1.6-doc/install	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.27local0/sun-j2sdk1.6-doc/install	2006-12-15 21:21:56.000000000 +0000
@@ -0,0 +1,16 @@
+j2se_base="/usr/share/doc/j2sdk1.6-sun-doc"
+priority=314
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+# Register the documentation with the various 
+# documentation systems, i.e. dhelp and dwww.
+
+if [ "$1" = configure ] ; then
+    if which install-docs >/dev/null 2>&1; then
+        install-docs -i /usr/share/doc-base/sun-j2sdk1.6-doc
+    fi
+fi
+
diff -Naur java-package-0.27.orig/sun-j2sdk1.6-doc/remove java-package-0.27local0/sun-j2sdk1.6-doc/remove
--- java-package-0.27.orig/sun-j2sdk1.6-doc/remove	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.27local0/sun-j2sdk1.6-doc/remove	2006-12-15 21:21:56.000000000 +0000
@@ -0,0 +1,7 @@
+j2se_base="/usr/share/doc/j2sdk1.6-sun-doc"
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+
