Hello. Recently I've written a simple program for myself and I think it fits well into minimalistic suckless philosophy, so I present to you XLSH or eXtended Login Shell. Let me paste a chunk of relevant info from the README file:
A simple login shell with readline functionality and PAM integration. * When run stand-alone on a virtual console it can replace standard "login" program. * When run in cooperation with X daemon component (xlshd) it can replace XDM/GDM/KDM. Features: * Small and simple, written entirely in C. * Easily hackable because of compact codebase (~1000 source lines). * Uses PAM for authorization and session management. * Ability to select non-default shell/window manager during logon. * Entirely keyboard driven display manager replacement (when used with xlshd) without the need for any fat libraries or GUI toolkits. * Defaults configured before compilation, some of them can be changed by setting few environment variables. * Single shell script file (/etc/xlsh/xlshrc) for customizing how xlshd launches xlsh. * Introduces a concept of "pre-login shell" known from GNU/HURD. * Only *three* important commands: 'login', 'reboot' and 'shutdown'. * New commands can be easily added (if you need any) by editing xlsh.c * Username autocompletion on TAB. * Zenburn color scheme by default (when run under X). So that's it. I grew tired of XDM/GDM/KDM so I rolled my own solution. I currently run it both on my ttys and instead of XDM. It serves me well, I find simple keyboard shell-like interaction very comfortable and it fits into my awesome WM look & feel (which is also Zenburn). Source code is here: https://github.com/Nadrin/xlsh Example screenshot is here: https://github.com/Nadrin/xlsh/wiki If any of you guys find it useful let me know. :) Constructive criticism/peer review is more than welcome. Cheers! -- Michał Siejak