On 02/03/12 11:08, n0g0013 wrote:
personally, i think it would be nice to have something functional in base for this and would be fairly confident about changing `init` and/or `getty` if i thought people were open to that change
This topic has come up a few times in the past as well but unfortunately no one has put something together as a solution - My current 'theoretical' solution would be to have a 'libpty' which basically encapsulates the functionality of e.g. screen/tmux without the extra session managment, etc. overhead. I hopefully plan on working on this - but have been saying that since vkernels came out ~5y ago :| .. Applications could then use this thin wrapper library around pty functionality to create 'pty sockets' in a specified location. The library/system would also have a 'pty' command which could be used to (re)connect/disconnect to these sockets - kind of like a single command for an individual screen/tmux 'window'. (and would probably also support simple single-window screen/tmux like functionality) Then, vkernel could be modified to link against this library and vkernel users could just specify a certain location for the vkernel to create a 'pty socket' to 'serve' the console. This would also be compatible with a 'notty' launch of vkernels from init - and also would be more generic to cover the startup script and other cases, etc. Personally I think if someone was going to put effort into it, it would make more sense to make vkernels 'tty agnostic' than to hook init tty handling to support vkernels better, but whatever is clever I suppose - the two do not conflict necessarily. Cheers, - Chris