diff -crB slim-1.3.0.orig/app.cpp slim-1.3.0/app.cpp *** slim-1.3.0.orig/app.cpp 2007-07-15 16:09:28.000000000 +0200 --- slim-1.3.0/app.cpp 2008-07-06 20:48:21.000000000 +0200 *************** *** 136,141 **** --- 136,142 ---- testing = false; mcookie = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; Dpy = NULL; + firstTime = true; // Parse command line while((tmp = getopt(argc, argv, "vhp:d?")) != EOF) { *************** *** 308,313 **** --- 309,328 ---- // Create panel LoginPanel = new Panel(Dpy, Scr, Root, cfg, themedir); + // try to autologin + if ((cfg->getOption("default_user") != "") && + (cfg->getOption("auto_login_du") == "true") && + (firstTime)) + { + firstTime = false; + LoginPanel->SetName(cfg->getOption("default_user")); + #ifdef USE_PAM + pam.set_item(PAM::Authenticator::User, cfg->getOption("default_user").c_str()); + #endif + + Login(); + } + // Start looping int panelclosed = 1; Panel::ActionType Action; diff -crB slim-1.3.0.orig/app.h slim-1.3.0/app.h *** slim-1.3.0.orig/app.h 2007-07-15 16:09:28.000000000 +0200 --- slim-1.3.0/app.h 2008-07-05 16:09:27.000000000 +0200 *************** *** 99,104 **** --- 99,106 ---- std::string themeName; std::string mcookie; + + bool firstTime; }; diff -crB slim-1.3.0.orig/cfg.cpp slim-1.3.0/cfg.cpp *** slim-1.3.0.orig/cfg.cpp 2007-07-15 16:09:28.000000000 +0200 --- slim-1.3.0/cfg.cpp 2008-07-05 14:53:59.000000000 +0200 *************** *** 43,48 **** --- 43,49 ---- options.insert(option("screenshot_cmd","import -window root /slim.png")); options.insert(option("welcome_msg","Welcome to %host")); options.insert(option("default_user","")); + options.insert(option("auto_login_du","false")); options.insert(option("current_theme","default")); options.insert(option("lockfile","/var/run/slim.lock")); options.insert(option("logfile","/var/log/slim.log")); diff -crB slim-1.3.0.orig/slim.conf slim-1.3.0/slim.conf *** slim-1.3.0.orig/slim.conf 2007-07-15 16:09:28.000000000 +0200 --- slim-1.3.0/slim.conf 2008-07-05 16:51:55.000000000 +0200 *************** *** 66,71 **** --- 66,72 ---- # default user, leave blank or remove this line # for avoid pre-loading the username. #default_user simone + #auto_login_du true # current theme, use comma separated list to specify a set to # randomly choose from Only in slim-1.3.0: slim.patch