This is the mail archive of the
cygwin-developers
mailing list for the Cygwin project.
upset vs. genini, release-2 hint files [Was: Re: More: [1.7] packaging problem? Both /usr/bin/ and /usr/lib/ are non-empty]
- From: "Charles Wilson" <cygwin at cwilson dot fastmail dot fm>
- To: "cygwin-developers at cygwin dot com" <cygwin-developers at cygwin dot com>
- Date: Thu, 28 May 2009 13:38:22 -0400
- Subject: upset vs. genini, release-2 hint files [Was: Re: More: [1.7] packaging problem? Both /usr/bin/ and /usr/lib/ are non-empty]
Eric Blake wrote:
>According to Corinna Vinschen on 5/14/2009 2:10 AM:
>>> 2009/05/13 23:36:14 running: C:\cygwin-1.7\bin\bash.exe --norc
>>> --noprofile -c /etc/postinstall/000-cygwin-post-install.sh
>>> Huh? No /etc/fstab file in \??\C:\cygwin-1.7\etc\fstab.d\cwilso11?
>>> Using default root and cygdrive prefix...
>>> /cygdrive/h/.bashrc
>>>
>>> Urk? <GalaxyQuestVoice>That's not riiight.</GQV>
>>
>> Indeed. Eric? Any idea?
>
> Are there any environment variables at play, like BASH_ENV? Can we write
> a simple script that does at least:
> echo $- $0 "$@"
> shopt -p
> for i in 0 1 2 3; do test -t $i; echo $?; done
>
> to see if that sheds any light on the environment? Can we even isolate
> whether it is the outer call to C:\cygwin-1.7\bin\bash.exe, or the inner
> call to #!/bin/sh when the script is executed, which is sourcing the rc file?
I was trying to follow up on this...more back on the original
thread...and ran into a possible issue with the setup.hint files on
sources. In order to easily reproduce the my original scenario as close
as I could, without spending half an hour each time in the chooser
window, I created a fake package that
1) requires: all the stuff I selected manually the first several tries
2) has /etc/postinstall/fake-sh.sh and /etc/postinstall/fake-bash.sh
with the contents above
I then used rsync to create a local mirror of cygwin/release-2
rsync -vaz rysnc://mirrors.xmission.com/cygwin/release-2
cygwin/release-2
and copied my fake package into that tree. Next, I tried to use genini
to create a new setup-2.ini ... but I got a LOT of errors. Mostly
a) mostly missing -src packages. Sometimes this may be appropriate (e.g.
base-cygwin has no -src).
b) other times a missing version, e.g. when the setup.hint contains a
prev: line, with no matching tarball. This is probably because the
setup.hint was unioned from 1.5 and specifies a prev: entry that was
exlicitly NOT unioned over to release-2.
So...it seems that genini is much more strict than upset is. A couple
of questions:
#1) should upset also be made strict (which would mean a massive audit
of release-2 setup.hint files, and perhaps also an audit of the actual
.tar.bz2 files under release-2)
#2) OR, should genini be made more lax, like upset?
#3) How can I salvage my local mirror, with my new fake package, and
return to investigating the "What's going on when setup-1.7.exe invokes
postinstall scripts, and their interaction with ~/.dotfiles?" issue?
Can I get a copy of upset itself and run that on my local customized
mirror, as a quick-n-dirty solution to my current impasse?
--
Chuck