diff -rc slim-1.2.6-orig/app.cpp slim-1.2.6/app.cpp *** slim-1.2.6-orig/app.cpp Fri Sep 15 23:00:37 2006 --- slim-1.2.6/app.cpp Sun Feb 25 17:30:50 2007 *************** *** 113,119 **** // Read configuration and theme cfg = new Cfg; ! cfg->readConf(CFGFILE); string themebase = ""; string themefile = ""; string themedir = ""; --- 113,121 ---- // Read configuration and theme cfg = new Cfg; ! char *cfgfile = getenv("SLIM_CFGFILE"); ! if (!cfgfile) cfgfile = CFGFILE; ! cfg->readConf(cfgfile); string themebase = ""; string themefile = ""; string themedir = ""; *************** *** 121,127 **** if (testing) { themeName = testtheme; } else { ! themebase = string(THEMESDIR) + "/"; themeName = cfg->getOption("current_theme"); string::size_type pos; if ((pos = themeName.find(",")) != string::npos) { --- 123,131 ---- if (testing) { themeName = testtheme; } else { ! char *themesdir = getenv("SLIM_THEMESDIR"); ! if (!themesdir) themesdir = THEMESDIR; ! themebase = string(themesdir) + "/"; themeName = cfg->getOption("current_theme"); string::size_type pos; if ((pos = themeName.find(",")) != string::npos) {