This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: More: [1.7] packaging problem? Both /usr/bin/ and /usr/lib/ are non-empty


Charles Wilson wrote:
> I'll need to verify that it really truly solves the
> problem Monday at work, but it looks promising.
[snip]
> Checking in as obvious (Corinna *meant* to do this, but missed)
> 
> 2009-05-30  Charles Wilson  <...>
> 
> 	* script.cc (Script::run): Really start bash with --norc
> 	--noprofile options.
> 
> This doesn't appear to *break* anything, but I won't *know* if it
> actually solves the original problem until I check it on Monday. (I
> *think* it will, but...)

Verified. I ran three separate tests ("virgin" installs), all from a
machine on which %HOME% was set to a network share that contained
pre-existing (noisy) .dotfiles.  In each case, the installation was
performed from a local rsync mirror of release-2, modified by the
inclusion of my special "fake" package, which:
  1) has an /etc/postinstall/ script to print out some diagnostic info
(labelled "inner" in the transcripts below), and
  2) has a very large list of requires: for my preferred initial
installation.


****************
1) The original setup 2.625, but with Sciprt::run() modified to print
out Eric's requested information from the "outer" /usr/bin/bash.  This
failed in the expected and previously-reported manner. In addition to
the partial transcript below, the resulting installation was thoroughly
broken. None of the alternatives-derived symlinks were correct; random
files ended up in / for some reason. Very bad.

2009/06/01 09:43:56 running: C:\cygwin-1.7\bin\bash.exe -c
/etc/postinstall/aalib.sh
Huh?  No /etc/fstab file in \??\C:\cygwin-1.7\etc\fstab.d\cwilso11?
Using default root and cygdrive prefix...
/cygdrive/h/.bashrc
outer: hBc /bin/bash
...
2009/06/01 09:46:35 running: C:\cygwin-1.7\bin\bash.exe -c
/etc/postinstall/fake-bash.sh
/cygdrive/h/.bashrc
outer: hBc /bin/bash
shopt -u cdable_vars
shopt -u cdspell
shopt -u checkhash
shopt -s checkwinsize
...
shopt -s sourcepath
shopt -u xpg_echo
1
1
1
1
SHELLOPTS=braceexpand:hashall:interactive-comments
BASH_ENV=
ENV=
inner: hB /etc/postinstall/fake-bash.sh
shopt -u cdable_vars
shopt -u cdspell
shopt -u checkhash
...
shopt -s sourcepath
shopt -u xpg_echo
1
1
1
1
SHELLOPTS=braceexpand:hashall:interactive-comments
BASH_ENV=
ENV=
end inner

****************
2) The "corrected" setup 2.625, where rather than reporting that bash is
invoked with --norc --noprofile but then invoking it without those
flags, this version actually uses those flags in the invocation. Also
"instrumented" as above. This worked as desired as shown below, and by
the fact that the installation was fully functional and correct, as far
as I could tell.

2009/06/01 10:12:20 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/000-cygwin-post-install.sh
outer: hBc /usr/bin/bash
...
2009/06/01 10:13:49 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/fake-bash.sh
outer: hBc /usr/bin/bash
shopt -u cdable_vars
shopt -u cdspell
shopt -u checkhash
shopt -u checkwinsize
...
shopt -s sourcepath
shopt -u xpg_echo
1
1
1
1
SHELLOPTS=braceexpand:hashall:interactive-comments
BASH_ENV=
ENV=
inner: hB /etc/postinstall/fake-bash.sh
shopt -u cdable_vars
shopt -u cdspell
shopt -u checkhash
shopt -u checkwinsize
...
shopt -s sourcepath
shopt -u xpg_echo
1
1
1
1
SHELLOPTS=braceexpand:hashall:interactive-comments
BASH_ENV=
ENV=
end inner


****************
3) The "corrected" setup 2.625, as checked in to CVS (that is, without
all the extra instrumentation).  This also worked as desired.

2009/06/01 10:45:34 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/000-cygwin-post-install.sh
2009/06/01 10:45:39 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/passwd-grp.sh
2009/06/01 10:45:45 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/coreutils.sh
...
2009/06/01 10:46:57 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/xpdf.sh
2009/06/01 10:46:57 running: C:\cygwin-1.7\bin\bash.exe --norc
--noprofile -c /etc/postinstall/fake-bash.sh
inner: hB /etc/postinstall/fake-bash.sh
shopt -u cdable_vars
shopt -u cdspell
shopt -u checkhash
shopt -u checkwinsize
...
shopt -s sourcepath
shopt -u xpg_echo
1
1
1
1
SHELLOPTS=braceexpand:hashall:interactive-comments
BASH_ENV=
ENV=
end inner

I've placed all three logs here (because even compressed, it's 700K):
http://cygwin.cwilson.fastmail.fm/ITP/setup-logs.tar.bz2
in case anyone is interested, but that link will go stale in about a week.

Whoever's in charge of making new setup-1.7 uploads...can we get an
update?  I'm not sure how the serial/version number is updated; all of
my builds reported the same 2.625 number -- so whatever magic happens to
bump that to 2.626 needs to happen, too.

--
Chuck


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]