diff --git a/core/modules/book/book.install b/core/modules/book/book.install
index 899ee81..6a2d697 100644
--- a/core/modules/book/book.install
+++ b/core/modules/book/book.install
@@ -46,8 +46,6 @@ function _book_install_type_create() {
   $book_node_type = node_type_set_defaults($book_node_type);
   node_type_save($book_node_type);
   node_add_body_field($book_node_type);
-  // Default to not promoted.
-  variable_set('node_options_book', array('status'));
   // Use this default type for adding content to books.
   variable_set('book_allowed_types', array('book'));
   variable_set('book_child_type', 'book');
diff --git a/core/modules/forum/forum.install b/core/modules/forum/forum.install
index 2eebd7f..97dd717 100644
--- a/core/modules/forum/forum.install
+++ b/core/modules/forum/forum.install
@@ -14,9 +14,6 @@ function forum_install() {
     ->fields(array('weight' => 1))
     ->condition('name', 'forum')
     ->execute();
-  // Forum topics are published by default, but do not have any other default
-  // options set (for example, they are not promoted to the front page).
-  variable_set('node_options_forum', array('status'));
 }
 
 /**
diff --git a/core/modules/node/content_types.inc b/core/modules/node/content_types.inc
index c76a5e2..ddfaf4d 100644
--- a/core/modules/node/content_types.inc
+++ b/core/modules/node/content_types.inc
@@ -178,7 +178,7 @@ function node_type_form($form, &$form_state, $type = NULL) {
   );
   $form['workflow']['node_options'] = array('#type' => 'checkboxes',
     '#title' => t('Default options'),
-    '#default_value' => variable_get('node_options_' . $type->type, array('status', 'promote')),
+    '#default_value' => variable_get('node_options_' . $type->type, array('status')),
     '#options' => array(
       'status' => t('Published'),
       'promote' => t('Promoted to front page'),
diff --git a/core/modules/node/node.install b/core/modules/node/node.install
index 82fd2e7..65564b4 100644
--- a/core/modules/node/node.install
+++ b/core/modules/node/node.install
@@ -525,6 +525,29 @@ function node_update_8000() {
 }
 
 /**
+ * Change default promoted flag of node types to disabled.
+ *
+ * The default for 'Promoted to front page' was changed from enabled to
+ * disabled. Since enabled was the implicit default previously, and may not have
+ * been explicitly configured as such, this update ensures that the old implicit
+ * default is still the default.
+ *
+ * @see http://drupal.org/node/987238
+ */
+function node_update_8001() {
+  // Fetch the available node types.
+  $types = db_query('SELECT type FROM {node_type}')->fetchCol();
+
+  foreach ($types as $type) {
+    $options = variable_get("node_options_$type");
+    if (!isset($options)) {
+      $options['promote'] = 'promote';
+      variable_set("node_options_$type", $options);
+    }
+  }
+}
+
+/**
  * @} End of "addtogroup updates-7.x-to-8.x"
  * The next series of updates should start at 9000.
  */
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index f2a9612..64facbc 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -955,7 +955,7 @@ function node_load($nid = NULL, $vid = NULL, $reset = FALSE) {
  */
 function node_object_prepare($node) {
   // Set up default values, if required.
-  $node_options = variable_get('node_options_' . $node->type, array('status', 'promote'));
+  $node_options = variable_get('node_options_' . $node->type, array('status'));
   // If this is a new node, fill in the default values.
   if (!isset($node->nid) || isset($node->is_new)) {
     foreach (array('status', 'promote', 'sticky') as $key) {
diff --git a/profiles/standard/standard.install b/profiles/standard/standard.install
index e570c18..5ddd93c 100644
--- a/profiles/standard/standard.install
+++ b/profiles/standard/standard.install
@@ -260,10 +260,12 @@ function standard_install() {
     rdf_mapping_save($rdf_mapping);
   }
 
-  // Default "Basic page" to not be promoted and have comments disabled.
-  variable_set('node_options_page', array('status'));
+  // Default "Basic page" to have comments disabled.
   variable_set('comment_page', COMMENT_NODE_HIDDEN);
 
+  // Default "Article" to be promoted.
+  variable_set('node_options_article', array('status', 'promote'));
+
   // Don't display date and author information for "Basic page" nodes by default.
   variable_set('node_submitted_page', FALSE);
 
