Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 6942)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 6943)
@@ -47,4 +47,11 @@
             // We'll just ignore this for now. The user will still be able to close JOSM by closing all its windows.
             Main.warn("Failed to register with OSX: " + ex);
+        }
+        // Invite users to install Java 7 if they are still with Java 6 and using a compatible OS X version (>= 10.7.3)
+        String java = System.getProperty("java.version");
+        String os = System.getProperty("os.version");
+        if (java != null && java.startsWith("1.6") && os != null && (
+                os.startsWith("10.7.") || os.startsWith("10.8") || os.startsWith("10.9"))) {
+            askUpdateJava(java);
         }
     }
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6942)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6943)
@@ -40,4 +40,14 @@
     @Override
     public void startupHook() {
+        if (isDebianOrUbuntu()) {
+            // Invite users to install Java 7 if they are still with Java 6 and using a compatible distrib (Debian >= 7 or Ubuntu >= 12.04)
+            String java = System.getProperty("java.version");
+            String os = getOSDescription();
+            if (java != null && java.startsWith("1.6") && os != null && (
+                    os.startsWith("Linux Debian GNU/Linux 7") || 
+                    os.startsWith("Linux Ubuntu 12") || os.startsWith("Linux Ubuntu 13") || os.startsWith("Linux Ubuntu 14"))) {
+                askUpdateJava(java, "apt://openjdk-7-jre");
+            }
+        }
     }
 
@@ -325,4 +335,8 @@
 
     protected void askUpdateJava(String version) {
+        askUpdateJava(version, "https://www.java.com/download");
+    }
+
+    protected void askUpdateJava(String version, String url) {
         try {
             ExtendedDialog ed = new ExtendedDialog(
@@ -333,13 +347,17 @@
             if (!ed.toggleEnable("askUpdateJava7").toggleCheckState()) {
                 ed.setButtonIcons(new String[]{"java.png", "cancel.png"}).setCancelButton(2);
-                ed.setMinimumSize(new Dimension(460, 260));
+                ed.setMinimumSize(new Dimension(480, 300));
                 ed.setIcon(JOptionPane.WARNING_MESSAGE);
-                ed.setContent(tr("You are running version {0} of Java.", "<b>"+version+"</b>")+"<br><br>"+
-                        "<b>"+tr("This version is no longer supported by {0} since {1} and is not recommended for use.", "Oracle", tr("February 2013"))+"</b><br><br>"+
-                        "<b>"+tr("JOSM will soon stop working with this version; we highly recommend you to update to Java {0}.", "7")+"</b><br><br>"+
-                        tr("Would you like to update now ?"));
+                String content = tr("You are running version {0} of Java.", "<b>"+version+"</b>")+"<br><br>";
+                if ("Sun Microsystems Inc.".equals(System.getProperty("java.vendor"))) {
+                    content += "<b>"+tr("This version is no longer supported by {0} since {1} and is not recommended for use.", 
+                            "Oracle", tr("February 2013"))+"</b><br><br>";
+                }
+                content += "<b>"+tr("JOSM will soon stop working with this version; we highly recommend you to update to Java {0}.", "7")+"</b><br><br>"+
+                        tr("Would you like to update now ?");
+                ed.setContent(content);
 
                 if (ed.showDialog().getValue() == 1) {
-                    openUrl("https://www.java.com/download");
+                    openUrl(url);
                 }
             }
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 6942)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 6943)
@@ -39,9 +39,7 @@
     @Override
     public void startupHook() {
-        super.startupHook();
-        // Invite users to install Oracle Java 7 if they are still with Sun/Oracle Java 6
-        String vendor = System.getProperty("java.vendor");
+        // Invite users to install Java 7 if they are still with Java 6
         String version = System.getProperty("java.version");
-        if ("Sun Microsystems Inc.".equals(vendor) && version != null && version.startsWith("1.6")) {
+        if (version != null && version.startsWith("1.6")) {
             askUpdateJava(version);
         }
