function drush_server_home

8.0.x environment.inc drush_server_home()
6.x environment.inc drush_server_home()
7.x environment.inc drush_server_home()
3.x environment.inc drush_server_home()
4.x environment.inc drush_server_home()
5.x environment.inc drush_server_home()
master environment.inc drush_server_home()

Return the user's home directory.

9 calls to drush_server_home()
drush_directory_cache in includes/environment.inc
The path to the global cache directory.
drush_init_core_init in commands/core/init.drush.inc
Initialize local Drush configuration
drush_preflight_backup_dir in includes/filesystem.inc
Decide where our backup directory should go
drush_preflight_tilde_expansion in includes/preflight.inc
Look for instances of arguments or parameters that start with "~/". Replace these with "$HOME/".
_drush_config_file in includes/context.inc
Return a list of possible drushrc file locations.

... See full list

File

includes/environment.inc, line 635
Functions used by drush to query the environment and setting the current configuration.

Code

function drush_server_home() {
  // Cannot use $_SERVER superglobal since that's empty during UnitUnishTestCase
  // getenv('HOME') isn't set on Windows and generates a Notice.
  $home = getenv('HOME');
  if (!empty($home)) {
    // home should never end with a trailing slash.
    $home = rtrim($home, '/');
  }
  elseif (!empty($_SERVER['HOMEDRIVE']) && !empty($_SERVER['HOMEPATH'])) {
    // home on windows
    $home = $_SERVER['HOMEDRIVE'] . $_SERVER['HOMEPATH'];
    // If HOMEPATH is a root directory the path can end with a slash. Make sure
    // that doesn't happen.
    $home = rtrim($home, '\\/');
  }
  return empty($home) ? NULL : $home;
}