Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Authentication-Warning: slinky.cs.nyu.edu: pechtcha owned process doing -bs Date: Wed, 16 Oct 2002 19:50:01 -0400 (EDT) From: Igor Pechtchanski Reply-To: cygwin AT cygwin DOT com To: cygwin AT cygwin DOT com Subject: Re: Errors during setup post-install scripts In-Reply-To: Message-ID: Importance: Normal MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-1144747756-1034812201=:6818" ---559023410-1144747756-1034812201=:6818 Content-Type: TEXT/PLAIN; charset=US-ASCII On Wed, 16 Oct 2002, Igor Pechtchanski wrote: > On Wed, 16 Oct 2002, David A. Cobb wrote: > > > Igor Pechtchanski wrote: > > > > >On 16 Oct 2002, Robert Collins wrote: > > > > > >>On Wed, 2002-10-16 at 09:11, Max Bowsher wrote: > > >> > > >>>David A. Cobb wrote: > > >>> > > >>>>Would it be a big deal to have the various setup scripts send their > > >>>>output to, say, /var/log/setup/SCRIPTNAME.log? > > >>>> > > >>>Probably not, but someone has to actually do it. > > >>> > > >>It's been discussed in the cygwin-apps list, at length. > > > > > >I'm looking into a simple-minded way to do this, and this raised at least > > >one question: do we actually need the output of the post-install scripts > > >flashing in front of our eyes? > > > > > IMO, no - the screen displays generally flash past too fast to be read > > anyway. Just log it! > > > > >If not, I can just redirect it to a file, > > >say, /var/log/setup.log.postinstall (there's probably no need for a > > >separate file per script). > > > > > Well, it needs to be fairly simple to tell which script failed - if any. > > > > >If we actually want the console windows, it'll take some more doing, > > >probably a separate console tee-like application. > > > Igor > > I was planning to bracket the script output with 'Running ' > and 'Done '. This should be enough... > Igor Ok, attached is the patch to setup that redirects the output of postinstall scripts to a file (/var/log/setup.log.postinstall), bracketing it with timestamped "Running " and "Done ". It's currently not tied into the logging mechanism, and it only redirects the postinstall scripts (as compared to preremove and postremove), but both are reasonably easy to add building on this patch. Igor ChangeLog: 2002-10-16 Igor Pechtchanski * script.cc (run): Add lname parameter. Redirect output of subprocess to file. (run_script): Add optional lname parameter. * script.h (run_script): Ditto. * postinstall.cc (RunFindVisitor::visitFile): Pass filename to run_script(). -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "Water molecules expand as they grow warmer" (C) Popular Science, Oct'02, p.51 ---559023410-1144747756-1034812201=:6818 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="setup-postinstall-log.patch" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="setup-postinstall-log.patch" LS0tIHBvc3RpbnN0YWxsLmNjLW9yaWcgMjAwMi0wNS0xOCAyMzowNzo1Mi4w MDAwMDAwMDAgLTA0MDANCisrKyBwb3N0aW5zdGFsbC5jYyAgICAgIDIwMDIt MTAtMTYgMTk6NDA6MDcuMDAwMDAwMDAwIC0wNDAwDQpAQCAtMzMsNyArMzMs NyBAQCBwdWJsaWM6DQogICBSdW5GaW5kVmlzaXRvciAoKXt9DQogICB2aXJ0 dWFsIHZvaWQgdmlzaXRGaWxlKFN0cmluZyBjb25zdCAmYmFzZVBhdGgsIGNv bnN0IFdJTjMyX0ZJTkRfREFUQSAqdGhlRmlsZSkNCiAgICAgew0KLSAgICAg IHJ1bl9zY3JpcHQgKCIvZXRjL3Bvc3RpbnN0YWxsLyIsIHRoZUZpbGUtPmNG aWxlTmFtZSk7DQorICAgICAgcnVuX3NjcmlwdCAoIi9ldGMvcG9zdGluc3Rh bGwvIiwgdGhlRmlsZS0+Y0ZpbGVOYW1lLCAiL3Zhci9sb2cvc2V0dXAubG9n LnBvc3RpbnN0YWxsIik7DQogICAgIH0NCiAgIHZpcnR1YWwgfiBSdW5GaW5k VmlzaXRvciAoKSB7fQ0KIHByb3RlY3RlZDoNCi0tLSAuL3NjcmlwdC5jYy1v cmlnCTIwMDItMDItMTggMDg6NTM6MDguMDAwMDAwMDAwIC0wNTAwDQorKysg Li9zY3JpcHQuY2MJMjAwMi0xMC0xNiAxOTowMToxOC4wMDAwMDAwMDAgLTA0 MDANCkBAIC0zMCw2ICszMCw4IEBAIHN0YXRpYyBjb25zdCBjaGFyICpjdnNp ZCA9DQogI2luY2x1ZGUgImZpbGVtYW5pcC5oIg0KICNpbmNsdWRlICJtb3Vu dC5oIg0KICNpbmNsdWRlICJpb19zdHJlYW0uaCINCisjaW5jbHVkZSA8dGlt ZS5oPg0KKyNpbmNsdWRlICJzY3JpcHQuaCINCiANCiBzdGF0aWMgU3RyaW5n IHNoID0gU3RyaW5nKCk7DQogc3RhdGljIGNvbnN0IGNoYXIgKmNtZCA9IDA7 DQpAQCAtNzksMTIgKzgxLDE2IEBAIGluaXRfcnVuX3NjcmlwdCAoKQ0KIH0N CiANCiBzdGF0aWMgdm9pZA0KLXJ1biAoY29uc3QgY2hhciAqc2gsIGNvbnN0 IGNoYXIgKmFyZ3MsIGNvbnN0IGNoYXIgKmZpbGUpDQorcnVuIChjb25zdCBj aGFyICpzaCwgY29uc3QgY2hhciAqYXJncywgY29uc3QgY2hhciAqZmlsZSwg Y29uc3QgY2hhciAqbG5hbWUpDQogew0KICAgQk9PTCBiOw0KICAgY2hhciBj bWRsaW5lW19NQVhfUEFUSF07DQogICBTVEFSVFVQSU5GTyBzaTsNCiAgIFBS T0NFU1NfSU5GT1JNQVRJT04gcGk7DQorICBIQU5ETEUgZmlsZV9vdXQgPSBJ TlZBTElEX0hBTkRMRV9WQUxVRTsNCisgIERXT1JEIGR3Q1BGbGFncyA9IENS RUFURV9ORVdfQ09OU09MRTsNCisgIEJPT0wgYkluaGVyaXRIYW5kbGVzID0g RkFMU0U7DQorICBEV09SRCBub3V0Ow0KIA0KICAgc3ByaW50ZiAoY21kbGlu ZSwgIiVzICVzICVzIiwgc2gsIGFyZ3MsIGZpbGUpOw0KICAgbWVtc2V0ICgm cGksIDAsIHNpemVvZiAocGkpKTsNCkBAIC05MywxNSArOTksNTkgQEAgcnVu IChjb25zdCBjaGFyICpzaCwgY29uc3QgY2hhciAqYXJncywgYw0KICAgc2ku bHBUaXRsZSA9IChjaGFyICopICJDeWd3aW4gU2V0dXAgUG9zdC1JbnN0YWxs IFNjcmlwdCI7DQogICBzaS5kd0ZsYWdzID0gU1RBUlRGX1VTRVBPU0lUSU9O Ow0KIA0KLSAgYiA9IENyZWF0ZVByb2Nlc3MgKDAsIGNtZGxpbmUsIDAsIDAs IDAsDQotCQkgICAgIENSRUFURV9ORVdfQ09OU09MRSwgMCwgZ2V0X3Jvb3Rf ZGlyICgpLmNzdHJfb25ldXNlKCksICZzaSwgJnBpKTsNCisgIGlmIChsbmFt ZSkNCisgICAgew0KKyAgICAgIFNFQ1VSSVRZX0FUVFJJQlVURVMgc2E7DQor ICAgICAgbWVtc2V0ICgmc2EsIDAsIHNpemVvZiAoc2EpKTsNCisgICAgICBz YS5uTGVuZ3RoID0gc2l6ZW9mIChzYSk7DQorICAgICAgc2EuYkluaGVyaXRI YW5kbGUgPSBUUlVFOw0KKyAgICAgIHNhLmxwU2VjdXJpdHlEZXNjcmlwdG9y ID0gTlVMTDsNCisgICAgICBmaWxlX291dCA9IENyZWF0ZUZpbGUgKGJhY2tz bGFzaCAoY3lncGF0aCAobG5hbWUpKS5jc3RyX29uZXVzZSgpLA0KKwkgIEZJ TEVfQVBQRU5EX0RBVEEsIEZJTEVfU0hBUkVfV1JJVEUsICZzYSwgT1BFTl9B TFdBWVMsDQorCSAgRklMRV9BVFRSSUJVVEVfTk9STUFMIHwgRklMRV9GTEFH X1NFUVVFTlRJQUxfU0NBTiwgTlVMTCk7DQorICAgICAgaWYgKGZpbGVfb3V0 ICE9IElOVkFMSURfSEFORExFX1ZBTFVFKQ0KKwl7DQorCSAgdGltZV90IG5v dzsgdGltZSgmbm93KTsNCisJICBjaGFyIGJ1ZlsxMDBdOw0KKwkgIHN0cnVj dCB0bSAqdG0gPSBsb2NhbHRpbWUgKCZub3cpOw0KKwkgIHN0cmZ0aW1lIChi dWYsIDEwMDAsICIlWS8lbS8lZCAlSDolTTolUyAiLCB0bSk7DQorCSAgU3Ry aW5nIG1zZyA9IFN0cmluZyAoYnVmKSArICJSdW5uaW5nOiAiICsgY21kbGlu ZSArICJcbiI7DQorCSAgRFdPUkQgbXNnbCA9IChEV09SRCkgbXNnLnNpemUo KTsNCisJICBpZiAoV3JpdGVGaWxlIChmaWxlX291dCwgbXNnLmNzdHJfb25l dXNlKCksIG1zZ2wsICZub3V0LCBOVUxMKSAmJg0KKwkgICAgICBub3V0ID09 IG1zZ2wpDQorCSAgICB7DQorCSAgICAgIGJJbmhlcml0SGFuZGxlcyA9IFRS VUU7DQorCSAgICAgIHNpLmR3RmxhZ3MgPSBTVEFSVEZfVVNFU1RESEFORExF UzsNCisJICAgICAgc2kuaFN0ZE91dHB1dCA9IGZpbGVfb3V0Ow0KKwkgICAg ICBzaS5oU3RkRXJyb3IgPSBmaWxlX291dDsNCisJICAgICAgZHdDUEZsYWdz ID0gMDsNCisJICAgIH0NCisJfQ0KKyAgICB9DQorDQorICBiID0gQ3JlYXRl UHJvY2VzcyAoMCwgY21kbGluZSwgMCwgMCwgYkluaGVyaXRIYW5kbGVzLA0K KwkJICAgICBkd0NQRmxhZ3MsIDAsIGdldF9yb290X2RpciAoKS5jc3RyX29u ZXVzZSgpLCAmc2ksICZwaSk7DQogDQogICBpZiAoYikNCiAgICAgV2FpdEZv clNpbmdsZU9iamVjdCAocGkuaFByb2Nlc3MsIElORklOSVRFKTsNCisNCisg IGlmIChsbmFtZSkNCisgICAgew0KKyAgICAgIGlmIChmaWxlX291dCAhPSBJ TlZBTElEX0hBTkRMRV9WQUxVRSkNCisJew0KKwkgIHRpbWVfdCBub3c7IHRp bWUoJm5vdyk7DQorCSAgY2hhciBidWZbMTAwXTsNCisJICBzdHJ1Y3QgdG0g KnRtID0gbG9jYWx0aW1lICgmbm93KTsNCisJICBzdHJmdGltZSAoYnVmLCAx MDAwLCAiJVkvJW0vJWQgJUg6JU06JVMgIiwgdG0pOw0KKwkgIFN0cmluZyBt c2cgPSBTdHJpbmcgKGJ1ZikgKyAiRG9uZTogIiArIGNtZGxpbmUgKyAiXG4i Ow0KKwkgIFdyaXRlRmlsZSAoZmlsZV9vdXQsIG1zZy5jc3RyX29uZXVzZSgp LCBtc2cuc2l6ZSgpLCAmbm91dCwgTlVMTCk7DQorCSAgQ2xvc2VIYW5kbGUo ZmlsZV9vdXQpOw0KKwl9DQorICAgIH0NCiB9DQogDQogdm9pZA0KLXJ1bl9z Y3JpcHQgKFN0cmluZyBjb25zdCAmZGlyLCBTdHJpbmcgY29uc3QgJmZuYW1l KQ0KK3J1bl9zY3JpcHQgKFN0cmluZyBjb25zdCAmZGlyLCBTdHJpbmcgY29u c3QgJmZuYW1lLCBTdHJpbmcgY29uc3QgJmxuYW1lKQ0KIHsNCiAgIGNoYXIg KmV4dCA9IHN0cnJjaHIgKGZuYW1lLmNzdHJfb25ldXNlKCksICcuJyk7DQog ICBpZiAoIWV4dCkNCkBAIC0xMTEsMTMgKzE2MSwxMyBAQCBydW5fc2NyaXB0 IChTdHJpbmcgY29uc3QgJmRpciwgU3RyaW5nIGNvDQogICAgIHsNCiAgICAg ICBTdHJpbmcgZjIgPSBkaXIgKyBmbmFtZTsNCiAgICAgICBsb2cgKExPR19Q TEFJTiwgU3RyaW5nICgicnVubmluZzogIikgKyBzaCArICIgLWMgIiArIGYy KTsNCi0gICAgICBydW4gKHNoLmNzdHJfb25ldXNlKCksICItYyIsIGYyLmNz dHJfb25ldXNlKCkpOw0KKyAgICAgIHJ1biAoc2guY3N0cl9vbmV1c2UoKSwg Ii1jIiwgZjIuY3N0cl9vbmV1c2UoKSwgbG5hbWUuY3N0cl9vbmV1c2UoKSk7 DQogICAgIH0NCiAgIGVsc2UgaWYgKGNtZCAmJiBzdHJjbXAgKGV4dCwgIi5i YXQiKSA9PSAwKQ0KICAgICB7DQogICAgICAgU3RyaW5nIGYyID0gYmFja3Ns YXNoIChjeWdwYXRoIChkaXIgKyBmbmFtZSkpOw0KICAgICAgIGxvZyAoTE9H X1BMQUlOLCBTdHJpbmcgKCJydW5uaW5nOiAiKSArIGNtZCArICIgL2MgIiAr IGYyKTsNCi0gICAgICBydW4gKGNtZCwgIi9jIiwgZjIuY3N0cl9vbmV1c2Uo KSk7DQorICAgICAgcnVuIChjbWQsICIvYyIsIGYyLmNzdHJfb25ldXNlKCks IGxuYW1lLmNzdHJfb25ldXNlKCkpOw0KICAgICB9DQogICBlbHNlDQogICAg IHJldHVybjsNCi0tLSAuL3NjcmlwdC5oLW9yaWcJMjAwMi0wMi0xOCAwNzoz NToyNC4wMDAwMDAwMDAgLTA1MDANCisrKyAuL3NjcmlwdC5oCTIwMDItMTAt MTYgMTg6NTU6NTUuMDAwMDAwMDAwIC0wNDAwDQpAQCAtMjEsNyArMjEsNyBA QA0KICAgIHdlIGhhdmUgYSBCb3VybmUgc2hlbGwsIGV4ZWN1dGUgaXQgdXNp bmcgc2guICBPdGhlcndpc2UsIGlmIGZuYW1lDQogICAgaGFzIHN1ZmZpeCAu YmF0LCBleGVjdXRlIHVzaW5nIGNtZCAqLw0KICAgIA0KLXZvaWQgcnVuX3Nj cmlwdCAoU3RyaW5nIGNvbnN0ICZkaXIsIFN0cmluZyBjb25zdCAmZm5hbWUp Ow0KK3ZvaWQgcnVuX3NjcmlwdCAoU3RyaW5nIGNvbnN0ICZkaXIsIFN0cmlu ZyBjb25zdCAmZm5hbWUsIFN0cmluZyBjb25zdCAmbG5hbWUgPSAiIik7DQog DQogLyogSW5pdGlhbGlzYXRpb24gc3R1ZmYgZm9yIHJ1bl9zY3JpcHQ6IHNo LCBjbWQsIENZR1dJTlJPT1QgYW5kIFBBVEggKi8NCiB2b2lkIGluaXRfcnVu X3NjcmlwdCAoKTsNCg== ---559023410-1144747756-1034812201=:6818 Content-Type: text/plain; charset=us-ascii -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ ---559023410-1144747756-1034812201=:6818--