diff --git a/entity_translation.info b/entity_translation.info
index 2a92c44..40534f6 100644
--- a/entity_translation.info
+++ b/entity_translation.info
@@ -2,7 +2,7 @@ name = Entity Translation
 description = Allows entities to be translated into different languages.
 package = Multilingual
 core = 7.x
-configure = admin/config/regional/entity_translation
+configure = admin/config/regional/entity-translation
 dependencies[] = locale
 files[] = includes/translation.handler.inc
 files[] = includes/translation.handler.node.inc
diff --git a/entity_translation.install b/entity_translation.install
index 76759f4..9aeea82 100644
--- a/entity_translation.install
+++ b/entity_translation.install
@@ -87,14 +87,19 @@ function entity_translation_install() {
     ->condition('name', 'entity_translation')
     ->execute();
 
-  // Enable translation for nodes.
-  variable_set('entity_translation_entity_types', array('node' => 'node'));
-
   // Make translation use the content language type.
   variable_set('translation_language_type', LANGUAGE_TYPE_CONTENT);
 }
 
 /**
+ * Implements hook_enable().
+ */
+function entity_translation_enable() {
+  // Trigger installation tasks.
+  variable_set('entity_translation_setup_tasks', TRUE);
+}
+
+/**
  * Implements hook_uninstall().
  */
 function entity_translation_uninstall() {
@@ -102,6 +107,7 @@ function entity_translation_uninstall() {
   variable_del('locale_field_language_fallback');
   variable_del('entity_translation_edit_form_info');
   variable_del('entity_translation_entity_types');
+  variable_del('entity_translation_setup_tasks');
 
   foreach (node_type_get_types() as $type => $object) {
     variable_del("entity_translation_node_metadata_$type");
diff --git a/entity_translation.module b/entity_translation.module
index 30e99e0..c296968 100644
--- a/entity_translation.module
+++ b/entity_translation.module
@@ -177,7 +177,7 @@ function entity_translation_menu() {
     }
   }
 
-  $items['admin/config/regional/entity_translation'] = array(
+  $items['admin/config/regional/entity-translation'] = array(
     'title' => 'Entity translation',
     'description' => 'Configure which entities can be translated and enable or disable language falback.',
     'page callback' => 'drupal_get_form',
@@ -246,15 +246,16 @@ function entity_translation_menu_entity_load($entity_id, $entity_type) {
  */
 function entity_translation_permission() {
   $permission = array(
-    'translate any entity' => array(
-      'title' => t('Translate any entity'),
-      'description' => t('Translate field content for any fieldable entity.'),
-    ),
     'administer entity translation' => array(
       'title' => t('Administer entity translation'),
       'description' => t('Select which entities can be translated.'),
     ),
+    'translate any entity' => array(
+      'title' => t('Translate any entity'),
+      'description' => t('Translate field content for any fieldable entity.'),
+    ),
   );
+
   foreach (entity_get_info() as $entity_type => $info) {
     if ($info['fieldable']) {
       $label = t($info['label']);
@@ -264,6 +265,7 @@ function entity_translation_permission() {
       );
     }
   }
+
   return $permission;
 }
 
@@ -538,3 +540,52 @@ function entity_translation_edit_form_info($form) {
 function entity_translation_access($entity_type, $translation) {
   return $translation['status'] || user_access('translate any entity') || user_access("translate $entity_type entities");
 }
+
+/**
+ * Implements hook_page_build().
+ */
+function entity_translation_page_build() {
+  if (variable_get('entity_translation_setup_tasks', FALSE)) {
+    $tasks = array();
+    $suggestions = array();
+
+    // More than one language is required.
+    $languages = language_list('enabled');
+    if (count($languages[1]) < 2) {
+      $tasks['language'] = t('add another <a href="@languages-url">language</a>', array(
+        '@languages-url' => url('admin/config/regional/language'),
+      ));
+    }
+
+    // Entity types need to be enabled for translation.
+    $enabled_types = array_filter(variable_get('entity_translation_entity_types', array()));
+    if (empty($enabled_types)) {
+      $tasks['entity_types'] = t('enable <a href="@translation-url">entity types</a> for translation', array(
+        '@translation-url' => url('admin/config/regional/entity-translation'),
+      ));
+    }
+
+    if (isset($enabled_types['node'])) {
+      $suggestions['content_types'] = t('enable <em>entity translation</em> support for at least one <a href="@content-types-url">content type</a>', array(
+        '@content-types-url' => url('admin/structure/types'),
+      ));
+    }
+
+    $suggestions['language-negotiation'] = t('enable the <em>URL</em> or <em>Session</em> <a href="@language-negotiation-url">language detection</a> methods to make the language switcher block visible', array(
+      '@language-negotiation-url' => url('admin/config/regional/language/configure'),
+    ));
+
+    $suggestions['permissions'] = t('enable the proper <a href="@permissions-url">permissions</a> to let users translate content', array(
+      '@permissions-url' => url('admin/people/permissions', array('fragment' => 'module-entity_translation')),
+    ));
+
+    drupal_set_message(t('You probably want to:') . theme('item_list', array('items' => $suggestions)), 'warning');
+
+    if (!empty($tasks)) {
+      drupal_set_message(t('You need to:') . theme('item_list', array('items' => $tasks)), 'warning');
+    }
+    else {
+      variable_del('entity_translation_setup_tasks');
+    }
+  }
+}
