aboutsummaryrefslogtreecommitdiff
Allow the configuration file and theme directory to be specified at run time.

Patch by Eelco Dolstra, from Nixpkgs.
---
 app.cpp | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/app.cpp b/app.cpp
index 237477d..735df9c 100644
--- a/app.cpp
+++ b/app.cpp
@@ -285,7 +285,9 @@ void App::Run()
 	if ( cfg == 0 )
 	{
 		cfg = new Cfg;
-		cfg->readConf(CFGFILE);
+		const char* cfgfile = getenv("SLIM_CFGFILE");
+		if (!cfgfile) cfgfile = CFGFILE;
+		cfg->readConf(cfgfile);
 	}
 	string themebase = "";
 	string themefile = "";
@@ -297,7 +299,9 @@ void App::Run()
 	}
 	else
 	{
-		themebase = string(THEMESDIR) + "/";
+		const 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)
-- 
2.39.2

L2+ (see upstream commit 0fb61a4d20). 2018-03-16gnu: attr: Use invoke instead of system*.Mark H Weaver * gnu/packages/attr.scm (attr)[arguments]: Use invoke. Return a boolean from all phase procedures. Add a comment explaining why one call to system* is retained. 2018-02-16gnu: Use HTTPS for supported nongnu.org home pages.Tobias Geerinckx-Rice * gnu/packages/acl.scm (acl)[home-page]: Use HTTPS. * gnu/packages/admin.scm (dmidecode)[home-page]: Likewise. * gnu/packages/attr.scm (attr)[home-page]: Likewise. * gnu/packages/audio.scm (lash)[home-page]: Likewise. * gnu/packages/avr.scm (avr-libc)[home-page]: Likewise. * gnu/packages/backup.scm (rdiff-backup, libchop)[home-page]: Likewise. * gnu/packages/compression.scm (fastjar, lzip, lziprecover, atool) (lunzip, clzip, lzlib, plzip)[home-page]: Likewise. * gnu/packages/emacs.scm (geiser, bbdb, m17n-lib, m17n-lib)[home-page]: Likewise. * gnu/packages/flashing-tools.scm (avrdude)[home-page]: Likewise. * gnu/packages/fontutils.scm (libotf)[home-page]: Likewise. * gnu/packages/game-development.scm (gzochi)[home-page]: Likewise. * gnu/packages/games.scm (enigma)[home-page]: Likewise. * gnu/packages/gsasl.scm (libntlm)[home-page]: Likewise. * gnu/packages/gtk.scm (guile-cairo)[home-page]: Likewise. * gnu/packages/guile.scm (guile-reader, guile-lib, guile-json) (guile-redis, g-wrap)[home-page]: Likewise. * gnu/packages/libunwind.scm (libunwind)[home-page]: Likewise. * gnu/packages/lout.scm (lout)[home-page]: Likewise. * gnu/packages/mpd.scm (sonata)[home-page]: Likewise. * gnu/packages/networking.scm (quagga)[home-page]: Likewise. * gnu/packages/ratpoison.scm (ratpoison)[home-page]: Likewise. * gnu/packages/skribilo.scm (skribilo)[home-page]: Likewise. * gnu/packages/telephony.scm (exosip)[home-page]: Likewise. * gnu/packages/texinfo.scm (texi2html)[home-page]: Likewise. * gnu/packages/xdisorg.scm (xbindkeys)[home-page]: Likewise.