Upgrading Cygwin - postinstall difficulties?

Igor Pechtchanski pechtcha@cs.nyu.edu
Tue Sep 16 16:45:00 GMT 2003


On Tue, 16 Sep 2003, Larry Hall wrote:

> At 11:37 AM 9/16/2003, Andrew DeFaria you wrote:
> >Recently updating a Cygiwn 1.3.20 -> 1.5.3 I noticed something that
> >concerns me. I think this problem is just a general problem and not
> >sure what is "right" in this situation.
> >
> >The postinstall scripts for 1.5.3 rely on executing commands that might
> >have dependencies on the cygwin1.dll that has not been installed yet!
> >If you are installing and cygwin1.dll is loaded then setup will not be
> >able to put the new cygwin1.dll in place. Instead it puts it as
> >cygwin1.dll.new and arranges for it to be put into place next reboot.
> >However this does not stop the postinstall scripts from running. When a
> >postinstall script runs it may execute say grep, but the new grep makes
> >calls to a new or renamed function expecting to find it in the new
> >cygwin1.dll. This fails and a dialog box is put up.
> >
> >Now the situation is understandable. The question is: Did the
> >postinstall script accomplish what it needed? After I reboot can I be
> >assured that the "failed" postinstall script did enough of what it
> >needed to do? Or should I re-execute (all) postinstall scripts?
>
> At least for now, to be sure that things worked properly, you'd need to
> rerun the postinstall scripts after the new DLL has been put in place.
> Either that or exit all Cygwin processes (including services) and rerun
> setup reinstalling all the packages you just installed.
>
> You're correct that this is not an issue specific to the 1.5.x upgrade
> process.
>
> --
> Larry Hall

Larry,

I'd like to reiterate a warning that even a reinstall might not bring the
system into a stable state if postinstall scripts were only partially
executed.  I'm perfectly willing to give examples of situations where this
will be true, but don't want to pollute the list unless there's general
interest.

Andrew's suggestion about delaying postinstall scripts until reboot sounds
reasonable (or at least as reasonable as my suggestion of letting the user
kill processes and retrying the replacement).  The current setup *is*
broken in that regard.
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_		pechtcha@cs.nyu.edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor@watson.ibm.com
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski, Ph.D.
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

"I have since come to realize that being between your mentor and his route
to the bathroom is a major career booster."  -- Patrick Naughton

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list