X-Recipient: archive-cygwin AT delorie DOT com X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F20613858D35 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dinwoodie.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dinwoodie.org Date: Mon, 31 Jan 2022 22:11:59 +0000 From: Adam Dinwoodie To: cygwin AT cygwin DOT com Subject: setup-*.exe --help default explanation re -D/-L options [Was: [ANNOUNCEMENT] Updated: setup (2.917)] Message-ID: <20220131221159.3hcw3xxcwje6sahf@lucy.dinwoodie.org> MIME-Version: 1.0 Content-Disposition: inline X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, PDS_RDNS_DYNAMIC_FP, RDNS_DYNAMIC, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" On Mon, 31 Jan 2022 12:56:13 -0700, Brian Inglis wrote: > On 2022-01-31 08:46, Andrey Repin wrote: > > Greetings, Jon Turney! > > > > > Probably what's wanted is to remember the state of those checkboxes, if > > > this isn't the first time setup has been run? > > > > That's a feature silently longed for for a loong time. :) But this is such a > > low priority, very few people actually mentioned it in the past years. > > It could usefully be added similarly to last-action: > > $ fgrep -A1 action /etc/setup/setup.rc > last-action > Download,Install > > last-shortcut: > Desktop|StartMenu|none,... This reminded me of a bug report I've been meaning to properly characterise and report for a while, and also pointed me at a workaround... Currently, running `setup-*.exe --help` produces output that includes the following: -D --download Download packages from internet only -L --local-install Install packages from local directory only The default is to both download and install packages, unless either --download or --local-install is specified. I think the descriptions for the `-D` and `-L` options are misleading, at least in combination with that final line, which is definitely wrong. As I understand it, the actual behaviour would be better described by something like the below: -D --download Download packages from internet only, unless -L is also specified -L --local-install Install packages from local directory only, unless -D is also specified If neither --download nor --local-install is specified, the default is to repeat the same action as from the previous run. If no previous run can be found, the default is to perform both actions, and both actions can be explicitly requested by specifying both --download and --local-install. In particular, the fact that the two options currently say they will "only" do their action, and that the default is to perform both, lead me to believe (a) the options were mutually exclusive and one would presumably override the other, (b) this was probably a legacy from before setup.rc stored the previous action, and therefore (c) if I was running setup with `-q` or `-M`, there was no way to get the supposedly default "do both" behaviour; I'd instead need to go through the full GUI. Having now seen how this setting is stored, I've realised I can just call setup with `-DL` and it'll perform both actions again. But I think my assumption that "default" was supposed to mean "default always" not "default only on first run" wasn't *entirely* PEBCAK (even if it mostly was), so that help text would definitely benefit from being made a bit more explicit. (I'm aware my suggestion above is decidedly wordy; it's not intended to be exactly what I think is required, only a first pass at clarifying the key details I think are missing.) -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple