[16:39:33]  halfline: oh, have a minute for talk about the bootlog stuff? [16:39:43]  well i have a few minutes [16:39:47]  there's an office party soon though [16:40:12]  notting: well, i'd like to reite runlevels as much as possible [16:40:19]  retire [16:40:33]  halfline: so [16:40:36]  what i discussed with kay [16:40:49]  was mostly that boot logging is awful to do, but kinda hard to do without [16:40:53]  halfline: interesting - I'll try that in a bit [16:41:29]  mezcalero: yea have to have logging [16:41:31]  notting: well, we could do this via template instantiation [16:41:41]  people don't mind graphical boot as long as they can read boot messages somewhere [16:41:59]  halfline: so, for the sysinit stuff we have two options: [16:42:06]  but if they can't read boot messages somewhere then they get angry about boot "hiding" them [16:42:37]  1) connect sysinit to kmsg and consider interactive bootup services a thing of the past and everything has to use plymouth [16:43:11]  2) admit that people might always need interactive stuff because people are crazy and connect sysinit to the console, but do the boot logging stuff [16:43:18]  #1 would be trivial to do [16:43:30]  #2 would probably means that we need to keep a boot logger of some kind [16:43:33]  question is where this lives [16:43:38]  ***  nils (~leila@dslb-092-075-167-074.pools.arcor-ip.net) has joined chat #fedora-desktop. [16:43:40]  ***  jbiebel has left chat #fedora-desktop. [16:43:46]  since you already have the code in plymouth [16:43:50]  i'd say to keep it there [16:43:56]  that's fine [16:44:00]  hej! does anyone know, how to install the gnome language selector? [16:44:12]  which also has the advantage that it could work even before we handover from the initrd [16:44:21]  we can dump it to syslog instead of manually writing boot.log though [16:44:25]  halfline: however, here's one idea to make it a little less ugly: [16:44:35]  connect things directly to kmsg [16:44:45]  don't buffer it and flush it to boot.log [16:44:57]  just write everything to kmsg, and syslog will flush it for you [16:45:04]  well i still have to buffer it [16:45:10]  since i have to show it when the user hits escape [16:45:19]  halfline: you can read it from kmsg [16:45:27]  just consider kmsg your buffer [16:45:30]  there only needs to be one [16:45:46]  oh true [16:45:58]  halfline: whee, a boot logger that dumps to syslogd. i remember that! [16:46:18]  so the idea is basically that everything goes to kmsg until syslog is started. from the on everything goes to syslog, except what the kernel itself logs [16:46:23]  well not syslogd [16:46:40]  yea so that's an interesting complication [16:46:55]  syslogd gets started somewhere in the middle of boot [16:46:59]  halfline: i think by simply using kmsg a lot of the ugliness of boot logging goes away, and things even become more robust and discoverable [16:47:23]  well, syslog flushes kmsg to syslog as soon as it starts up [16:47:42]  and from then on will write verything coming from kmsg to it as well [16:47:58]  so if you log to kmsg it will end  up in syslog in any case [16:48:04]  oh okay [16:48:30]  it's weird [16:48:39]  make sure to prefix your lines when you write them to kmsg though. otherwise people will be pissed ;-) [16:49:06]  and the kernel log buffer we use these days is gigantic anyway, so this should not be a problem [16:49:15]  although if you're writing to kmsg when you exit, it means there will be some interleaving/time skew in the logs [16:49:51]  i guess <6> ? [16:50:38]  notting: well i'd write to kmsg the entire time i guess [16:50:50]  not just dump a big buffer at the end or anything like that [16:51:19]  halfline: i was thinking about "<6>plymouth: " as a prefix [16:51:23]  mezcalero: so one thing i'm worried about [16:51:34]  i.e. when systemd logs to kmsg it uses "systemd: " [16:51:38]  and udev uses "udev: " [16:51:45]  or you might even use "console: " [16:51:46]  or so [16:51:46]  if i read from kmsg [16:52:04]  notting: time skew? explain? [16:52:04]  then will i be swallowing syslogd's data? [16:52:27]  like syslog(2) has a command "return number of unread characters" [16:52:28]  halfline: there are two interfaces to kmsg [16:52:33]  i wonder if syslogd uses that [16:52:45]  one is /proc/kmsg [16:52:50]  which is what syslog uses [16:52:57]  the other is syslog(2) [16:53:30]  halfline: when you want to show the logs in the UI use syslog(2) and you will not interfere with /proc/kmsg [16:53:53]  notting: no, the idea is that plymouth writes to kmsg right-aaway [16:53:55]  no queuing [16:54:17]  are you sure? [16:54:22]  just line-by-line copying from the pty to kmsg as it happens [16:54:24]  (they don't interfere) [16:54:47]  halfline: pretty sure [16:54:52]  well i'll try it [16:54:59]  not 200% sure though ;-) [16:55:09]  and if i hit a problem i'll just buffer myself like i am now [16:55:35]  i definitely like the idea of getting my messages from kmsg though [16:55:40]  because i'll get a more full set of messages [16:55:45]  than just the console messages [16:56:10]  halfline: see the comments on syslog(2) regarding this btw. operation 2 is what syslog does. operation 3 is what you'd do for the UI