From: Ken Brown <kbrown@cornell.edu>
To: cygwin@cygwin.com
Subject: Re: Error Installing Cygwin (setup-x86_64.exe & setup-x86) - No setup.ini.sig found.
Date: Sun, 18 Oct 2015 15:38:00 -0000 [thread overview]
Message-ID: <5623BCDB.50502@cornell.edu> (raw)
In-Reply-To: <5623A2E0.9070800@cornell.edu>
On 10/18/2015 9:47 AM, Ken Brown wrote:
> On 10/18/2015 9:28 AM, Achim Gratz wrote:
>> Ken Brown writes:
>>> Are you saying you've never tested local installs without the -m
>>> switch?
>>
>> No, I'm saying that the "-m" switch should reduce the possibility of
>> setup doing something unwanted, because it eliminates the possibility of
>> it switching into ad-hoc mode (where it searches the subdirs for
>> setup.ini and package files to full depth).
>>
>>> If so, that explains why you haven't been able to reproduce
>>> the problems that several of us have reported. I just verified that
>>> setup does indeed correctly descend into subdirectories with the -m
>>> switch.
>>
>> That still doesn't tell me what about your mirror directories triggers
>> it to not use local mirror mode when not using that switch. If the
>> directory structure is correct that is in theory impossible since it
>> tries mirror mode first and only if it doesn't find a useable setup file
>> that way would it fall back to ad-hoc mode. Please run the commands in
>> my other replay to David Stacey and tell me the result.
>
> $ find -mindepth 1 -maxdepth 1 -name $arch | \
> > xargs -I: sh -c 'for f in :/setup.{xz,bz2,ini}; \
> > do [ -e $f ] && { echo $f ; break; } done' && \
> > find -mindepth 2 -maxdepth 2 -name $arch | \
> > xargs -I: sh -c 'for f in :/setup.{xz,bz2,ini}; \
> > do [ -e $f ] && { echo $f ; break; } done'
> ./http%3a%2f%2fmirrors.kernel.org%2fsourceware%2fcygwin%2f/x86/setup.ini
> ./http%3a%2f%2fsanibeltranquility.com%2fcygwin%2f/x86/setup.ini
> ./myrepo/x86/setup.xz
Just for the record, I did a git bisection, showing (unsurprisingly) that the
first bad commit is one of the following two:
commit 18837afa64984e98476401e99dcd772970cf9736
Author: Achim Gratz <Stromeko@Stromeko.DE>
Date: Sat Jul 11 21:58:30 2015 +0200
Refactor setup search and implement XZ compressed setup files
* ini.cc: Construct setup_ext_list from array until we can use
C++11 aggregate initializers. Clean up function parenthesis.
(decompress_ini): Refactored for use from do_local_ini and
do_remote_ini. Change outdated comment about setup.ini
uncompressed size.
(check_ini_sig): Factor out signature check.
(fetch_remote_ini): Refactored for use from do_remote_ini.
(do_local_ini): Iterate over search results in found_ini_list.
Use decompress_ini and check_ini_sig.
(do_remote_ini): Iterate over known setup file extensions from
setup_ext_list with early-out semantics, preferring ".xz" over
".bz2" over ".ini" extension. Use fetch_remote_ini and
check_ini_sig.
* ini.h: Remove unused macros.
* IniParseFindVisitor.cc: Remove, the search is already done by
SetupFindVisitor in do_from_local_dir.
* IniParseFindVisitor.cc: Ditto.
* Makefile.am (@SETUP@_SOURCES): Ditto.
commit 35addac4a65a1d70ab02b8d175f71efa83cf74ba
Author: Achim Gratz <Stromeko@Stromeko.DE>
Date: Wed Jul 1 21:36:12 2015 +0200
Correct local directory search
* fromcwd.cc: Remove unused includes. Add global found_ini_list
to record the search result.
(SetupFindVisitor): Make setup.{ini,bz2,xz} known and provide bool
private variables to record whether we found them. Another bool
inidir to indicate whether we are currently inside a directory
where setup.ini files should exist.
(SetupFindVisitor::visitFile): When inidir is true, check if a
setup file with one of the known extensions was found and set the
corresponding bool variables.
(SetupFindVisitor::visitDirectory): Set inidir when appropriate.
Recurse into directories only if they are potential mirror dirs,
based on level. Truncate search and recurse into inidir. Record
any setup files in found_ini_list while preferring ".xz" over
".bz2" over ".ini" extension.
(SetupFindVisitor::operator bool): Return true when found_ini_list
is non-empty.
(do_from_local_dir): Restrict search to either a single mirror
hierarchy or multiple mirror hierarchy; setup files directly in
local directory or mixed hierarchies are no longer recognized.
The setup files must be present in an architecture dependent
directory of "x86/" or "x86_64/", either in the local directory
for single mirror or one level down for multiple mirrors.
This patch already finds setup.xz files, but the code to deal with
them will be in a later patch. The current code re-does the search
and ignores the results from here.
setup didn't build after 35addac, so I can't pin it down further.
Unfortunately, those two commits seem to involve fairly substantial changes.
As test case for the bisection, I used step 4 of the recipe I posted in
https://www.cygwin.com/ml/cygwin/2015-10/msg00267.html.
Ken
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
next prev parent reply other threads:[~2015-10-18 15:38 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-16 14:21 Robert Pace
2015-10-16 16:20 ` Andrey Repin
2015-10-16 20:53 ` Achim Gratz
2015-10-16 21:18 ` Robert Pace
2015-10-17 7:20 ` Achim Gratz
2015-10-16 21:29 ` Ken Brown
2015-10-17 7:28 ` Achim Gratz
2015-10-17 11:15 ` Nicolas Roche
2015-10-17 12:13 ` Ken Brown
2015-10-17 14:19 ` Ken Brown
2015-10-17 17:06 ` Achim Gratz
2015-10-17 18:30 ` Ken Brown
2015-10-17 19:09 ` Achim Gratz
2015-10-17 21:14 ` David Stacey
2015-10-17 22:20 ` Ken Brown
2015-10-18 2:35 ` Andrey Repin
2015-10-18 2:48 ` Ken Brown
2015-10-18 11:48 ` Achim Gratz
2015-10-18 13:20 ` Ken Brown
2015-10-18 13:31 ` Achim Gratz
2015-10-18 13:47 ` Ken Brown
2015-10-18 15:38 ` Ken Brown [this message]
2015-10-18 16:49 ` Achim Gratz
2015-10-18 15:09 ` David Stacey
2015-10-18 17:48 ` Achim Gratz
2015-10-18 23:42 ` Ken Brown
2015-10-19 6:05 ` Achim Gratz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5623BCDB.50502@cornell.edu \
--to=kbrown@cornell.edu \
--cc=cygwin@cygwin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).