diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc
index 9e7d69d..68d46ee 100644
--- a/modules/system/system.admin.inc
+++ b/modules/system/system.admin.inc
@@ -137,7 +137,9 @@ function system_themes_page() {
     if (!empty($theme->info['hidden'])) {
       continue;
     }
-    $admin_theme_options[$theme->name] = $theme->info['name'];
+    if (empty($theme->info['type']) || ($theme->info['type'] == 'admin-theme')) {
+      $admin_theme_options[$theme->name] = $theme->info['name'];
+    }
     $theme->is_default = ($theme->name == $theme_default);
 
     // Identify theme screenshot.
@@ -190,12 +192,14 @@ function system_themes_page() {
             'query' => $query,
             'attributes' => array('title' => t('Disable !theme theme', array('!theme' => $theme->info['name']))),
           );
-          $theme->operations[] = array(
-            'title' => t('Set default'),
-            'href' => 'admin/appearance/default',
-            'query' => $query,
-            'attributes' => array('title' => t('Set !theme as default theme', array('!theme' => $theme->info['name']))),
-          );
+          if(empty($theme->info['type']) || ($theme->info['type'] == 'frontend-theme')) {
+            $theme->operations[] = array(
+              'title' => t('Set default'),
+              'href' => 'admin/appearance/default',
+              'query' => $query,
+              'attributes' => array('title' => t('Set !theme as default theme', array('!theme' => $theme->info['name']))),
+            );
+          }
         }
       }
       else {
@@ -205,12 +209,14 @@ function system_themes_page() {
           'query' => $query,
           'attributes' => array('title' => t('Enable !theme theme', array('!theme' => $theme->info['name']))),
         );
-        $theme->operations[] = array(
-          'title' => t('Enable and set default'),
-          'href' => 'admin/appearance/default',
-          'query' => $query,
-          'attributes' => array('title' => t('Enable !theme as default theme', array('!theme' => $theme->info['name']))),
-        );
+        if (empty($theme->info['type']) || ($theme->info['type'] == 'frontend-theme')) {
+          $theme->operations[] = array(
+            'title' => t('Enable and set default'),
+            'href' => 'admin/appearance/default',
+            'query' => $query,
+            'attributes' => array('title' => t('Enable !theme as default theme', array('!theme' => $theme->info['name']))),
+          );
+        }
       }
     }
 
@@ -222,6 +228,15 @@ function system_themes_page() {
       $theme->notes[] = t('default theme');
     }
 
+    if (isset($theme->info['type'])) {
+      if ($theme->info['type'] == 'admin-theme') {
+        $theme->notes[] = t('administration only');
+      }
+      if ($theme->info['type'] == 'frontend-theme') {
+        $theme->notes[] = t('front-end only');
+      }
+    }
+
     // Sort enabled and disabled themes into their own groups.
     $theme_groups[$theme->status ? 'enabled' : 'disabled'][] = $theme;
   }
diff --git a/themes/bartik/bartik.info b/themes/bartik/bartik.info
index aab37a7..e17627c 100644
--- a/themes/bartik/bartik.info
+++ b/themes/bartik/bartik.info
@@ -32,4 +32,3 @@ regions[footer_fourthcolumn] = Footer fourth column
 regions[footer] = Footer
 
 settings[shortcut_module_link] = 0
-
diff --git a/themes/seven/seven.info b/themes/seven/seven.info
index 969f749..2a7a428 100644
--- a/themes/seven/seven.info
+++ b/themes/seven/seven.info
@@ -12,3 +12,4 @@ regions[page_top] = Page top
 regions[page_bottom] = Page bottom
 regions[sidebar_first] = First sidebar
 regions_hidden[] = sidebar_first
+type = admin-theme
\ No newline at end of file
