Index: modules/block/block.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/block/block.test,v
retrieving revision 1.25
diff -u -p -r1.25 block.test
--- modules/block/block.test	3 Aug 2009 03:04:33 -0000	1.25
+++ modules/block/block.test	17 Aug 2009 19:58:21 -0000
@@ -215,7 +215,7 @@ class NonDefaultBlockAdmin extends Drupa
    * Test non-default theme admin.
    */
   function testNonDefaultBlockAdmin() {
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration', 'administer site appearance'));
     $this->drupalLogin($admin_user);
     $this->drupalPost('admin/appearance', array('status[stark]' => 1), t('Save configuration'));
     $this->drupalGet('admin/structure/block/list/stark');
@@ -240,7 +240,7 @@ class NewDefaultThemeBlocks extends Drup
    */
   function testNewDefaultThemeBlocks() {
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer site appearance'));
     $this->drupalLogin($admin_user);
 
     // Ensure no other theme's blocks are in the block table yet.
@@ -274,7 +274,7 @@ class BlockAdminThemeTestCase extends Dr
   public static function getInfo() {
     return array(
       'name' => 'Admin theme block admin accessibility',
-      'description' => "Check whether the block administer page for a disabled theme acccessible if and only if it's the admin theme.",
+      'description' => "Check whether the block administer page for a disabled theme accessible if and only if it's the admin theme.",
       'group' => 'Block',
     );
   }
@@ -284,7 +284,7 @@ class BlockAdminThemeTestCase extends Dr
    */
   function testAdminTheme() {
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration','administer site appearance'));
     $this->drupalLogin($admin_user);
 
     // Ensure that access to block admin page is denied when theme is disabled.
Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.750
diff -u -p -r1.750 system.module
--- modules/system/system.module	17 Aug 2009 19:14:41 -0000	1.750
+++ modules/system/system.module	17 Aug 2009 19:58:21 -0000
@@ -206,7 +206,11 @@ function system_permission() {
   return array(
     'administer site configuration' => array(
       'title' => t('Administer site configuration'),
-      'description' => t('Configure site-wide settings such as module or theme administration settings.'),
+      'description' => t('Configure module settings.'),
+    ),
+    'administer site information' => array(
+      'title' => t('Administer site information'),
+      'description' => t('Manage basic site information, such as the site name, slogan, and e-mail address.'),
     ),
     'administer actions' => array(
       'title' => t('Administer actions'),
@@ -226,7 +230,11 @@ function system_permission() {
     ),
     'select different theme' => array(
       'title' => t('Select different theme'),
-      'description' => t('Select a theme other than the default theme set by the site administrator.'),
+      'description' => t('Select a personal theme other than the default theme set by the site administrator.'),
+    ),
+    'administer site appearance' => array(
+      'title' => t('Administer site appearance'),
+      'description' => t('Choose the site theme and manage theme settings.'),
     ),
     'block IP addresses' => array(
       'title' => t('Block IP addresses'),
@@ -547,7 +555,7 @@ function system_menu() {
     'title' => 'Appearance',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_themes_form'),
-    'access arguments' => array('administer site configuration'),
+    'access arguments' => array('administer site appearance'),
     'weight' => -6,
   );
   $items['admin/appearance/select'] = array(
@@ -559,7 +567,7 @@ function system_menu() {
   $items['admin/appearance/settings'] = array(
     'title' => 'Configure',
     'page arguments' => array('system_theme_settings'),
-    'access arguments' => array('administer site configuration'),
+    'access arguments' => array('administer site appearance'),
     'type' => MENU_LOCAL_TASK,
   );
   // Theme configuration subtabs.
@@ -710,7 +718,7 @@ function system_menu() {
     'description' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_site_information_settings'),
-    'access arguments' => array('administer site configuration'),
+    'access arguments' => array('administer site information'),
   );
   $items['admin/config/development/logging'] = array(
     'title' => 'Logging and errors',
@@ -1199,7 +1207,7 @@ function blocked_ip_load($iid) {
  * Menu item access callback - only admin or enabled themes can be accessed.
  */
 function _system_themes_access($theme) {
-  return user_access('administer site configuration') && ($theme->status || $theme->name == variable_get('admin_theme', 0));
+  return user_access('administer site appearance') && ($theme->status || $theme->name == variable_get('admin_theme', 0));
 }
 
 /**
Index: modules/system/system.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.test,v
retrieving revision 1.64
diff -u -p -r1.64 system.test
--- modules/system/system.test	17 Aug 2009 19:14:41 -0000	1.64
+++ modules/system/system.test	17 Aug 2009 19:58:21 -0000
@@ -485,7 +485,7 @@ class AccessDeniedTestCase extends Drupa
     parent::setUp();
 
     // Create an administrative user.
-    $this->admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer blocks'));
+    $this->admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer blocks', 'administer site information'));
     $this->drupalLogin($this->admin_user);
   }
 
@@ -562,7 +562,7 @@ class PageNotFoundTestCase extends Drupa
     parent::setUp();
 
     // Create an administrative user.
-    $this->admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $this->admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer site information'));
     $this->drupalLogin($this->admin_user);
   }
 
@@ -727,7 +727,7 @@ class FrontPageTestCase extends DrupalWe
     parent::setUp('system_test');
 
     // Create admin user, log in admin user, and create one node.
-    $this->admin_user = $this->drupalCreateUser(array('access content', 'administer site configuration'));
+    $this->admin_user = $this->drupalCreateUser(array('access content', 'administer site configuration', 'administer site information'));
     $this->drupalLogin($this->admin_user);
     $this->node_path = "node/" . $this->drupalCreateNode(array('promote' => 1))->nid;
 
@@ -910,7 +910,7 @@ class SystemThemeFunctionalTest extends 
   function setUp() {
     parent::setUp();
 
-    $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer site configuration', 'bypass node access'));
+    $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer site configuration', 'bypass node access', 'administer site appearance'));
     $this->drupalLogin($this->admin_user);
     $this->node = $this->drupalCreateNode();
   }
