Index: /trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6961)
+++ /trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6962)
@@ -48,5 +48,16 @@
                     os.startsWith("Linux Debian GNU/Linux 7") || os.startsWith("Linux Mint") ||
                     os.startsWith("Linux Ubuntu 12") || os.startsWith("Linux Ubuntu 13") || os.startsWith("Linux Ubuntu 14"))) {
-                askUpdateJava(java, "apt://openjdk-7-jre");
+                String url;
+                // apturl does not exist on Debian (see #8465)
+                if (os.startsWith("Linux Debian")) {
+                    url = "https://packages.debian.org/stable/openjdk-7-jre";
+                } else if (getPackageDetails("apturl") != null) {
+                    url = "apt://openjdk-7-jre";
+                } else if (os.startsWith("Linux Mint")) {
+                    url = "http://community.linuxmint.com/software/view/openjdk-7-jre";
+                } else {
+                    url = "http://packages.ubuntu.com/trusty/openjdk-7-jre";
+                }
+                askUpdateJava(java, url);
             }
         }
@@ -149,12 +160,15 @@
      * @return The package name and package version if it can be identified, null otherwise
      */
-    public String getPackageDetails(String packageName) {
+    public static String getPackageDetails(String packageName) {
         try {
-            String version = Utils.execOutput(Arrays.asList("dpkg-query", "--show", "--showformat", "${Architecture}-${Version}", packageName));
-            return packageName + ":" + version;
+            String version = Utils.execOutput(Arrays.asList(
+                    "dpkg-query", "--show", "--showformat", "${Architecture}-${Version}", packageName));
+            if (version != null) {
+                return packageName + ":" + version;
+            }
         } catch (IOException e) {
             Main.warn(e);
-            return null;
-        }
+        }
+        return null;
     }
 
Index: /trunk/src/org/openstreetmap/josm/tools/Utils.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 6961)
+++ /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 6962)
@@ -804,4 +804,7 @@
      */
     public static String execOutput(List<String> command) throws IOException {
+        if (Main.isDebugEnabled()) {
+            Main.debug(join(" ", command));
+        }
         Process p = new ProcessBuilder(command).start();
         BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
@@ -817,5 +820,5 @@
         }
         Utils.close(input);
-        return all.toString();
+        return all != null ? all.toString() : null;
     }
 
