setup: why consult registry (rootdir) if -R has been specified?

Houder houder@xs4all.nl
Thu Apr 4 10:09:00 GMT 2019


Hi Jon,

My question is about setup.exe. Why does setup _initially_ consult
rootdir in registry if -R <rootdir> has been specified ?
(and yes, there is an installation at the rootdir that I specify
  w/ the -R option)

This is my workflow:

  - I use a shortcut to invoke setup.exe
  - my shortcut specifies -R and -l (i.c. root directory and local
    directory)
e.g.
E:\_cygwin64_repository\setup-2.897-x86_64.exe -n -R e:/Cygwin64 \
     -l e:/_cygwin64_repository
(start directory: E:\_cygwin64_repository)

  - updating occurs in two steps:
    1. download (w/o installing) to local directory
    2. install fr. local directory

  - I am using multiple 64-bits installations (installing packages
    from a specific local directory, dependent on the _chosen_ root
    directory)
i.e.
e:/_cygwin64_repository      => e:/Cygwin64
e:/_cygwin64-test_repository => e:/Cygwin64-test
etc.

I understand the need for

  - /etc/setup/installed.db ("what is installed"), and
  - /etc/setup/setup.rc
   - last cache (aka local directory or repository)
   - last mirror
   - last action

/HKLM/Software/Cygwin/setup in registry shows the root directory:
Either
   key = rootdir, value = e:\Cygwin64
or
   key = rootdir, value = e:\Cygwin64-test

The value in registry changes if I "install fr. local directory"
and if I complete this step (next, next (ok), finish).
In all other cases, the value remains UNchanged.

/etc/setup/setup.rc in the root directory is updated after each
invocation of setup; that is, the root directory corresponding
to the directory specified w/ the -R option. Splendid.

However when I invoke setup (using the shortcut), setup appears
to consult /etc/setup/setup.rc in the root directory as specified
by the registry, NOT as specified by the -R option.

As result, setup (nearly) always shows _ME_ the WRONG last action
when it is started (as I switch a _lot_ between the installations
that I have).

Why does setup _initially_ ignore the root directory as specified
by the -R option, showing (me) the wrong last action (in my case)?

Regards,
Henri

--
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



More information about the Cygwin mailing list