Looking for some desktop eye-candy I found your project. It looks great! It has almost everything I always thought a login manager should have (getty sux:-) -- framebuffer graphics but also a failsafe text login, opening different kinds of sessions including X and non-X, etc. Anyway I miss something.

(BTW I'm a programmer but don't know much about the kernel/init/getty thing, so forgive me if I say something that's near impossible to do within Qingy, or has to be done by -say- the kernel developers).

Having various ttys is useful. But I'm bothered by the fact that you should reserve at system boot a given number of them to have enough ttys available (let's say 6). Then, you have *6 processes* on charge of the login procedure; you could log into the system on 6 *different places*; if all 6 vts are being used, you just *can't spawn* a few more; the X server BTW usually opens a new vt when it is launched; and so on.

So, here's my idea. What about opening just one vt (say tty1) where the Qingy login screen will rest, and when a user logs in (using that terminal) simply spawn a new vt and run on top of it the needed process(es)? Then, there will be only as much "login processes/qingy's childs/whatever", and open virtual terminals, as are necessary, and you'll never run out of vts (in fact, your problem will be assigning keystrokes to vts :). It could also be possible to reserve at boot time (in /etc/inittab) vts for concrete uses: tty2 to show the syslog, tty3 to show another log, tty4 to show system statistics (users logged in, number of network sockets open, etc). Qingy will have to locate the first free vt number at login time, but I think that's all.

What do you all think about this? Am I missing something? Have I said something really stupid :) ?