Index: wp-admin/css/common.css
===================================================================
--- wp-admin/css/common.css	(revision 38561)
+++ wp-admin/css/common.css	(working copy)
@@ -1412,6 +1412,7 @@
 }
 
 .update-message p:before,
+.update-message-no-package p:before,
 .updating-message p:before,
 .updated-message p:before,
 .import-php .updating-message:before,
@@ -1436,6 +1437,7 @@
 
 /* Update icon. */
 .update-message p:before,
+.update-message-no-package p:before,
 .updating-message p:before,
 .import-php .updating-message:before,
 .button.updating-message:before,
Index: wp-admin/includes/theme.php
===================================================================
--- wp-admin/includes/theme.php	(revision 38561)
+++ wp-admin/includes/theme.php	(working copy)
@@ -561,19 +561,20 @@
 		}
 
 		$prepared_themes[ $slug ] = array(
-			'id'           => $slug,
-			'name'         => $theme->display( 'Name' ),
-			'screenshot'   => array( $theme->get_screenshot() ), // @todo multiple
-			'description'  => $theme->display( 'Description' ),
-			'author'       => $theme->display( 'Author', false, true ),
-			'authorAndUri' => $theme->display( 'Author' ),
-			'version'      => $theme->display( 'Version' ),
-			'tags'         => $theme->display( 'Tags' ),
-			'parent'       => $parent,
-			'active'       => $slug === $current_theme,
-			'hasUpdate'    => isset( $updates[ $slug ] ),
-			'update'       => get_theme_update_available( $theme ),
-			'actions'      => array(
+			'id'               => $slug,
+			'name'             => $theme->display( 'Name' ),
+			'screenshot'       => array( $theme->get_screenshot() ), // @todo multiple
+			'description'      => $theme->display( 'Description' ),
+			'author'           => $theme->display( 'Author', false, true ),
+			'authorAndUri'     => $theme->display( 'Author' ),
+			'version'          => $theme->display( 'Version' ),
+			'tags'             => $theme->display( 'Tags' ),
+			'parent'           => $parent,
+			'active'           => $slug === $current_theme,
+			'hasUpdate'        => isset( $updates[ $slug ] ),
+			'hasUpdatePackage' => isset( $updates[ $slug ]['package'] ) && !empty( $updates[ $slug ]['package'] ),
+			'update'           => get_theme_update_available( $theme ),
+			'actions'          => array(
 				'activate' => current_user_can( 'switch_themes' ) ? wp_nonce_url( admin_url( 'themes.php?action=activate&amp;stylesheet=' . $encoded_slug ), 'switch-theme_' . $slug ) : null,
 				'customize' => $customize_action,
 				'delete'   => current_user_can( 'delete_themes' ) ? wp_nonce_url( admin_url( 'themes.php?action=delete&amp;stylesheet=' . $encoded_slug ), 'delete-theme_' . $slug ) : null,
Index: wp-admin/themes.php
===================================================================
--- wp-admin/themes.php	(revision 38561)
+++ wp-admin/themes.php	(working copy)
@@ -250,10 +250,14 @@
 		<div class="theme-screenshot blank"></div>
 	<?php } ?>
 
-	<?php if ( $theme['hasUpdate'] ) : ?>
+	<?php if ( $theme['hasUpdate'] && $theme['hasUpdatePackage'] ) : ?>
 		<div class="update-message notice inline notice-warning notice-alt">
 			<p><?php _e( 'New version available. <button class="button-link" type="button">Update now</button>' ); ?></p>
 		</div>
+	<?php elseif( $theme['hasUpdate'] ) : ?>
+		<div class="update-message-no-package notice inline notice-warning notice-alt">
+			<p><?php _e( 'New version available.' ); ?></p>
+		</div>
 	<?php endif; ?>
 
 	<span class="more-details" id="<?php echo $aria_action; ?>"><?php _e( 'Theme Details' ); ?></span>
@@ -377,8 +381,10 @@
 		<div class="theme-screenshot blank"></div>
 	<# } #>
 
-	<# if ( data.hasUpdate ) { #>
+	<# if ( data.hasUpdate && data.hasUpdatePackage ) { #>
 		<div class="update-message notice inline notice-warning notice-alt"><p><?php _e( 'New version available. <button class="button-link" type="button">Update now</button>' ); ?></p></div>
+	<# } else if( data.hasUpdate ) { #>
+		<div class="update-message-no-package notice inline notice-warning notice-alt"><p><?php _e( 'New version available.' ); ?></p></div>
 	<# } #>
 
 	<span class="more-details" id="{{ data.id }}-action"><?php _e( 'Theme Details' ); ?></span>
Index: wp-admin/update-core.php
===================================================================
--- wp-admin/update-core.php	(revision 38561)
+++ wp-admin/update-core.php	(working copy)
@@ -294,13 +294,15 @@
 		?>
 		<tr>
 			<td class="check-column">
-				<input type="checkbox" name="checked[]" id="<?php echo $checkbox_id; ?>" value="<?php echo esc_attr( $plugin_file ); ?>" />
-				<label for="<?php echo $checkbox_id; ?>" class="screen-reader-text"><?php
-					/* translators: %s: plugin name */
-					printf( __( 'Select %s' ),
-						$plugin_data->Name
-					);
-				?></label>
+				<?php if( isset( $plugin_data->update->package ) && !empty( $plugin_data->update->package ) ){ ?>
+					<input type="checkbox" name="checked[]" id="<?php echo $checkbox_id; ?>" value="<?php echo esc_attr( $plugin_file ); ?>" />
+					<label for="<?php echo $checkbox_id; ?>" class="screen-reader-text"><?php
+						/* translators: %s: plugin name */
+						printf( __( 'Select %s' ),
+							$plugin_data->Name
+						);
+					?></label>
+				<?php } ?>
 			</td>
 			<td class="plugin-title"><p>
 				<strong><?php echo $plugin_data->Name; ?></strong>
@@ -365,13 +367,15 @@
 		?>
 		<tr>
 			<td class="check-column">
-				<input type="checkbox" name="checked[]" id="<?php echo $checkbox_id; ?>" value="<?php echo esc_attr( $stylesheet ); ?>" />
-				<label for="<?php echo $checkbox_id; ?>" class="screen-reader-text"><?php
-					/* translators: %s: theme name */
-					printf( __( 'Select %s' ),
-						$theme->display( 'Name' )
-					);
-				?></label>
+				<?php if( isset( $theme->update['package'] ) && !empty( $theme->update['package'] ) ){ ?>
+					<input type="checkbox" name="checked[]" id="<?php echo $checkbox_id; ?>" value="<?php echo esc_attr( $stylesheet ); ?>" />
+					<label for="<?php echo $checkbox_id; ?>" class="screen-reader-text"><?php
+						/* translators: %s: theme name */
+						printf( __( 'Select %s' ),
+							$theme->display( 'Name' )
+						);
+					?></label>
+				<?php } ?>
 			</td>
 			<td class="plugin-title"><p>
 				<img src="<?php echo esc_url( $theme->get_screenshot() ); ?>" width="85" height="64" class="updates-table-screenshot" alt="" />
