=== Ingmar^ [n=ingmar@165.160-201-80.adsl-dyn.isp.belgacom.be] has joined #upstart === Amaranth [n=travis@ubuntu/member/amaranth] has joined #upstart === mayday_jay [n=mayday_j@maydayjay.net] has joined #upstart === zx64 [n=zx64@compsoc.sunion.warwick.ac.uk] has joined #upstart === j_ack [n=rudi@p508DA9E4.dip0.t-ipconnect.de] has joined #upstart === j_ack [n=rudi@p508DA9E4.dip0.t-ipconnect.de] has joined #upstart === Amaranth_ [n=travis@ubuntu/member/amaranth] has joined #upstart === Amaranth_ is now known as Amaranth [03:30] facinating conversation eh? === j_ack [n=rudi@p508DA9E4.dip0.t-ipconnect.de] has joined #upstart === j_ack_ [n=rudi@p508D8B4A.dip0.t-ipconnect.de] has joined #upstart === Amaranth [n=travis@ubuntu/member/amaranth] has joined #upstart === Admiral_Chicago [n=freddy@st0660990722.monm.edu] has joined #upstart === ijuz_ [n=ijuz@p54ABB06B.dip0.t-ipconnect.de] has joined #upstart === Admiral_Chicago [n=freddy@st0660990722.monm.edu] has joined #upstart === Keybuk [n=scott@quest.netsplit.com] has joined #upstart === Ingmar^ [n=ingmar@165.160-201-80.adsl-dyn.isp.belgacom.be] has joined #upstart === nibil [n=bil@adsl-static-3-105.uklinux.net] has joined #upstart === juergbi [n=juerg@80-219-26-249.dclient.hispeed.ch] has joined #upstart [10:16] well it seems that everyone else here is in a different timezone to me, and/or different working hours. [10:21] oh? [10:21] it's been quiet here for a few days [10:21] ubuntu beta release all that [10:21] which I mostly spent chicken-pecking in vmware while playing transport tycoon in another window [10:22] i only said that because my backlog has chat in it, but always during the night 7pm to 4am. [10:24] heh [10:24] which timezone are you in? [10:24] UTC+1 but will be UTC+0 when we switch from DST =) [10:24] same as me then, technically [10:25] I'm just not very good at actually obeying my own timzone === Md [i=md@freenode/staff/md] has joined #upstart [10:53] hi Keybuk any comments to my mail "local job changes"? [10:56] juergbi: none other than thanks for bring it up, and that it does need to be thought about ;) [10:56] I honestly haven't thought about that too much yet [10:59] Keybuk: ok, i just hope that something like my proposal can be integrated before it's already too painful to make changes to the directory structure ;) [11:00] I'm not sure about the two files method thoug [11:00] it's easy to add stanzas, but not remove them [11:00] if you didn't want the pre-start script, how would you "remove" that? [11:01] there could be an additional element / keyword to prefix a line with which will result in removing a previous definition [11:01] i.e. "no start script" or "remove start script" [11:01] at that point, you may as well just edit the priginal file though, surely? [11:01] and have an intelligent merge tool [11:02] for well setup packages disable/enable is probably the only thing that gets used often [11:02] so it could also be a simpler file where just overridden enable/disable status gets listed [11:03] i'd be perfectly fine with that but the proposed approach would be more flexible [11:04] probably also changes to the set of events that can trigger the job [11:04] yes, that's right [11:05] something like "no start on ..." to disable some triggers doesn't seem to bad to me [11:06] except that you're then putting quite complex config file merging code into the init daemon to cope with shit package managers [11:06] i don't know upstart's parsing code but i presume that it would be fairly easy to implement something like that [11:07] not especially actually [11:07] you'd have to parse them both at the same time, no? [11:07] or have code to deal with a "no" stanza and potentially remove or reset it [11:07] one right after the other like it was concatenated together [11:08] but that's actually complex [11:08] just like iterating over more lines [11:08] "pid timeout 22" [11:08] "no pid timeout" [11:08] what's the pid timeout? [11:08] like it hasn't been specified [11:08] the later one wins [11:08] so the distro-supplied should be parsed first [11:08] which means you need to duplicate the entire config file parsing code [11:08] and have a "reset to default" option [11:09] you're right with being able to get the default, yes [11:09] but the parsing could definitively be shared, imo [11:09] it can't, because the parsing has to be different [11:09] pid timeout != no pid timeout [11:10] otherwise what does "no pid timeout 42" mean? :p [11:10] ;) [11:10] i'd just allow all the no-stanzas in the original config file, too. it doesn't make sense to use them there but it'd be logical and easier [11:11] as written before, just look at them like one large file [11:11] yeah, but you'd still have to write the config parsing code for the no stanzas [11:11] which is reasonably large [11:11] yes, sure [11:11] and some of them are quite complicated [11:11] for example [11:11] "no start on job-started apache2" [11:12] you have to iterate the list of known start events for an event that matches [11:12] or maybe just check for "no" at the beginning of the parsing and then set a flag [11:12] and do you then require an exact, or just a partial, match? [11:12] that would have to be defined. exat should suffice in my opinion [11:13] it could also be done in something like a pre-processing stage, i.e. just ignore all lines that are followed by the same line with a "no" prefix [11:13] but that wouldn't suit well the script stanzas, i guess [11:13] that'd mean you'd have to process the /etc one first to read the no lines, then the /lib one to get the defaults, then the /etc one to get the overrides [11:14] with pre-processing, yes, was probably a bad idea [11:14] what's wrong with just the usual conffile stuff on upgrade? [11:14] or ucf if you want three-way merging [11:15] it's jsut less error-prone with separate files than with standard three-way merging [11:16] things like white-space or comment changes at the wrong place shouldn't have influence on the final config file [11:16] less questions, easier for the admin [11:16] three-way merging can be done intelligently [11:16] ie. by parsing both files and analysing the difference, rather than using patch [11:16] you mean format-specific? [11:16] yes [11:16] yes, sure, that would probably work very well [11:17] but that would require effort for every distro instead of just making upstart more flexible [11:17] or adding such a three-way merge tool to upstart itself, that would be possible, too [11:17] i'm assuming that such a tool would require more work than modifying upstart, though [11:17] the main reason I don't like the /lib idea is actually that it hides the config files [11:18] it means you go into /etc/event.d and find that it's empty [11:18] so you then have to read the /lib version [11:18] and then decide what changes you want to make, and only write those changes in a pseudo-diff format [11:19] and then you actually have an interesting problem which is that upgrades can break you silently [11:19] at least with a conffile prompt, you know it might break [11:19] the advantage is that if you look at your changes some time later you know exactly what you've changed [11:19] the obvious example being "no start on job-started apachew" [11:19] what if the upstream change that in the /lib one to "start on job-start apache2" instead [11:19] suddenly your admin edit is ignored [11:19] (silently) [11:20] yes, that's right, that would also be problematic for three-way merging, though [11:20] at least having to do the merge means you're aware of the problem [11:21] the events are part of the system interface and should be treated with corresponding stability guarantees, though [11:21] you can break every scheme if you want to but some make it harder [11:21] job-started and job-start are both vaild events [11:21] issued at different times [11:22] ah, i thought it was a version number change or something like that of the apache start script [11:22] the upstream may have just wanted to slightly change when their job was started [11:22] yes, that's right [11:22] which would suddenly break the sysadmin's change to make it *not* start [11:23] yes, might be problematic [11:23] it's a complicated issue :p [11:24] what'd you say to a separate enable/disable file, at least? [11:24] should be very easy and non-problematic [11:25] part of the reason I haven't applied _ion's patch yet is that I'm tempted that jobs shouldn't be disabled in the job files, but separately [11:25] good to hear that :) [11:25] also understanding what disabled means [11:25] if a job is disabled, can it be started manually? [11:26] intuitively i'd assume it's just like it had no start-stanzas [11:26] right, Johan's patch actually prevents manual starts as well [11:27] which is functionally equivalent to just deleting the /etc/event.d file :) [11:27] right ;) [11:27] there could also be a tri-state like service management in windows [11:28] disabled-manual-auto [11:29] *nods* [11:36] if a job is running and set to manual it should probably remain running and if the job is set to disabled it should be stopped, i guess [11:37] when i get some time, i might even write a patch for it but can't right now [11:38] syntax should be very simple, something like "job-name enabled|manual|disabled"? === che [n=che@unaffiliated/che] has joined #upstart === Ingmar [n=ingmar@181.203-201-80.adsl-dyn.isp.belgacom.be] has joined #upstart === mbiebl [n=michael@dslb-084-057-229-133.pools.arcor-ip.net] has joined #upstart === LeoO [i=LeoO@msmpc46.gciv.ulg.ac.be] has joined #upstart [02:25] hello I made the mistake to install upstart without upstart-compat-sysv and now I can't boot at all anymore [02:25] any solution ? [02:26] LeoO: init=/bin/sh at the end of your grub command line [02:26] the error I get is init: rc-default process (4028) terminated with status 127 [02:27] okay I'll try this === LeoO [i=LeoO@msmpc46.gciv.ulg.ac.be] has joined #upstart [02:46] init=/bin/sh at the end of the grub file didn't do the trick [02:47] I'm still stuck with upstart without upstart-compat-sysv and now way to boot (even in safe mode) [02:47] is there a previous init=something parameter? [02:47] perhaps the kernel only looks at the first one [02:47] it's giving me a "init: unable to exectute '//sbin/logd/' ...' [02:48] e.g. kernel /boot/foobar root=/dev/hda1 ro init=/bin/bash [02:48] oksa [02:48] lets try that === LeoO [i=LeoO@msmpc46.gciv.ulg.ac.be] has joined #upstart [03:08] ok now I can reach sh but apt-get will not work [03:08] mount -o rw,remount / [03:09] ? [03:09] ttried mount -F -o rw, remount/ [03:09] sent me error messages but I didn't wrote them down === mbiebl [n=michael@dslb-084-057-229-133.pools.arcor-ip.net] has joined #upstart === johnnybuoy [n=void@unaffiliated/johnnybuoy] has joined #upstart === LeoO [i=LeoO@msmpc46.gciv.ulg.ac.be] has joined #upstart [03:26] okay now I could get rid of upstart but apt-get is trying to connect to the internet to reinstal sysvinit and since the network is not up it is a problem [03:26] configure the network by hand? [03:27] how do you do that [03:28] modprobe, ifconfig, dhclient, etc. [03:28] that sound messy [03:28] you're running Debian? [03:28] or Ubuntu? [03:28] maybe it would be sipmler to just reinstall ubuntu [03:28] edgy ubuntu [03:28] just run /etc/init.d/rcS [03:29] if you're running edgy, how come you had to install upstart-compat-sysv ? it's installed by default [03:29] no [03:29] let me explain [03:29] I had edgy [03:29] but sysvinti was installed [03:29] sysvinit [03:29] and no upstart at all [03:29] an old edgy? [03:29] its was an update from dapper [03:30] it was dist-upgraded everyday [03:30] yet, there was no upstart [03:30] so I apt-get installed it [03:30] you didn't have ubuntu-minimal installed then? [03:30] it probably got uninstalled by your system trying to keep sysvinit [03:30] I don't know [03:30] we had some problems with that [03:31] there was some heavy problems with apt-get these last days [03:31] so [03:31] yeah, not surprising [03:31] it is in development, after all [03:31] edgy's not been too bad [03:31] apt-get install upstart removed sysvinti and didn't install upstart-compat-sysv [03:31] there haven't been many days that have left you without a functioning system [03:31] often you can have a week or two without even a working libc [03:31] yeah [03:32] that's true [03:32] it would have told you that you really should install upstart-compat-sysv in the apt-get output [03:32] edgy is very stable for a rc [03:32] no it didn't [03:32] just didn't said a word about it [03:32] using synaptic [03:32] oh, dunno about synaptic [03:32] you said apt-get :) [03:32] yaeah I was wrong [03:33] this is a big issue that synaptic doesn't behaves the same way apt-get does [03:33] well [03:33] Recommended packages: [03:33] upstart-compat-sysv upstart-logd system-services [03:33] The following packages will be installed: [03:33] upstart [03:33] etc. [03:34] now I gonna reboot to try to see if I can cure that === j_ack [n=rudi@p508D8430.dip0.t-ipconnect.de] has joined #upstart === madduck [n=madduck@debian/developer/madduck] has joined #upstart === Amaranth [n=travis@ubuntu/member/amaranth] has joined #upstart === leoO [n=leoOoOo@msmpc46.gciv.ulg.ac.be] has joined #upstart [04:06] thaks for the help guys Im now back on dapper === Ingmar^ [n=ingmar@vpna045.ugent.be] has joined #upstart === wasabi [n=wasabi@ubuntu/member/wasabi] has joined #upstart === mbiebl_ [n=michael@dslb-084-057-229-133.pools.arcor-ip.net] has joined #upstart === j_ack [n=rudi@p508D8430.dip0.t-ipconnect.de] has joined #upstart === Ingmar [n=ingmar@vpna209.ugent.be] has joined #upstart === chemaja [n=chemajaU@c220-237-191-236.brasd1.vic.optusnet.com.au] has joined #upstart === physicsnick [n=physicsn@HSE-Ottawa-ppp239329.sympatico.ca] has joined #upstart === mbiebl [n=michael@dslb-084-057-225-014.pools.arcor-ip.net] has joined #upstart === nibil [n=bil@adsl-static-3-105.uklinux.net] has left #upstart ["wibble"] === Paul928 [n=Paul928@yuma-cuda1-g2-70-36-75-82.losaca.adelphia.net] has joined #upstart === Paul928 [n=Paul928@yuma-cuda1-g2-70-36-75-82.losaca.adelphia.net] has left #upstart ["Leaving"] === Amaranth [n=travis@ubuntu/member/amaranth] has joined #upstart === mayday_jay [n=mayday_j@gimel.nas.net] has joined #upstart === Amaranth [n=travis@ubuntu/member/amaranth] has joined #upstart === Ingmar^ [n=ingmar@d51A480D5.access.telenet.be] has joined #upstart === TheBearded1_ [n=cyle@203.39.cm.sunflower.com] has joined #upstart [09:26] Could somebody tell me how upstart compares to initng? [09:41] <_ion> initng is based on dependencies, upstart is based on events. [09:42] <_ion> Search for 'initng' at http://www.netsplit.com/blog/articles/2006/08/26/upstart-in-universe === Seveas [n=seveas@ubuntu/member/seveas] has joined #upstart === XVampireX [n=serge@89.0.211.212.dynamic.barak-online.net] has joined #upstart === theCore [n=alex@modemcable106.200-70-69.mc.videotron.ca] has joined #upstart === mbiebl [n=michael@dslb-084-056-235-173.pools.arcor-ip.net] has joined #upstart