From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin-developers@cygwin.com, CygWin-Apps <cygwin-apps@cygwin.com>
Subject: Re: [HEADSUP] Let's start a Cygwin 1.7 release area
Date: Thu, 03 Apr 2008 09:42:00 -0000 [thread overview]
Message-ID: <20080403094220.GA21673@calimero.vinschen.de> (raw)
In-Reply-To: <47F40F16.8080303@cwilson.fastmail.fm>
For a start, please note that this patch is just preliminary.
The actual problem is still one of the problems I noted in my mail
http://cygwin.com/ml/cygwin-developers/2008-03/msg00000.html, to which I
didn't get a reply, except from Brian.
- The POSIX path of mount points is restricted to 256 characters.
That's because it's used as the value name of a registry value and
value names are restricted to (surprise!) 256 chars. A decision
and, perhaps, coding has to be done:
- Do we stick to this restriction?
- Do we introduce a new mount point storage in the registry?
- Do we drop registry mount points and store mount points in future
in fstab-like files as, say, /etc/fstab (system mount points) and
~/.fstab (user mount points)?
Having said that...
On Apr 2 17:56, Charles Wilson wrote:
> Corinna Vinschen wrote:
>> I have applied a preliminary patch to Cygwin which allows to load the
>> mount entries from /etc/fstab and /etc/fstab.<usersid>. If none of
>> these files is available, the DLL falls back to reading the mount points
>> from the registry.
>
> I like this. A lot.
AOL ;)
>> Cygwin finds the fstab files by fetching it's own Win32 path and then
>> replacing the last two path components with etc/fstab or
>> etc/fstab.<usersid>, like this:
>> Get own path ==> C:\\cygwin\\bin\\cygwin1.dll
>> Where's fstab? ==> C:\\cygwin\\etc\\fstab
>
> So, it implicitly computes where / is?
No, it doesn't. It just snips away the last two path components and
tacks the etc/fstab string on. Plus the .$SID to get the user mounts.
After the mount points have been read, root can potentially be
somewhere else entirely.
>> The layout of the fstab file follows the Linux layout. As example,
>> these are my fstab files:
>> $ cat /etc/fstab
>> C:\cygwin / ntfs binary 0 0
>
> Which means that the line above really ought to match the computed '/', or
> bad things might happen, right? If so, then it is redundant to specify it
> here. Perhaps this should just be autocomputed...since the fstype and last
> two elements are ignored.
Yes, I thought about this, too. It doesn't really seem to make much
sense to redefine /. As for /usr/bin and /usr/lib, these paths are
not inherently defined by the DLL. They exist because a decision
has been made how to create a Cygwin installation in the net distro.
This could be changed in future, or our internal Red Hat release
could need another layout. There's no reason to couple this distro
decision to the DLL, IMHO.
> [...]
> Maybe there should be "special" rules for the three special autocomputed
> mount points:
>
> # NOTE: the three "magic" auto-computed paths are present
> # in this file strictly so that mount options may be specified.
> C:\This\Path\Is\AutoComputed / ntfs binary 0 0
> C:\This\Path\Is\AutoComputed /usr/bin ntfs binary 0 0
> C:\This\Path\Is\AutoComputed /usr/lib ntfs binary 0 0
Or simply
root / ntfs binary 0 0
and stick to /usr/bin and /usr/lib as they are today.
> Oh, and I'm guessing that setup-1.7 should create /etc/fstab if "install
> for all users", and "/etc/fstab.SID" if "just me"? Otherwise, you'll
> clobber the "old" cygwin's registry entries every time you try to update
> your "new" cygwin installation...
That's right. I think this could be done by a simple postinstall script
which gets called from setup-1.7. Consider a package which comes with
a default /etc/fstab which consists only of the above entry for the root
dir. The script would simply add the /usr/bin and /usr/lib entries.
I have the vague feeling it would be sufficient to install only a
/etc/fstab, even in "just me" mode, though. The fstab.$SID file is
only necessary in multi-user installations, IMHO.
Another problem is that the 1.7 mount(1) still creates the mount entries
in the registry. This should be removed, if we stick to the file based
approach. mount would only create temporary mount points which are
only valid in this single session, until the last Cygwin process in this
session exits. A bit like a reboot on Linux :)
> One little wrinkle that makes switching between two cygwin installations
> difficult: services. Do you
>
> (1) stop/uninstall -- switch-to-other-cygwin -- reinstall/start as part of
> each switch, or
>
> (2) somehow change each service's target path (and PATH environment
> variable, if the service.exe is not in /bin. For the proposed 1.7.0 you
> have to ensure that the "correct" cygwin1.dll is used), and then restart?
>
> (3) install services under different names for the two installations, and
> just remember to stop all the old ones, before trying to use any tools from
> the "new" installation, and restart the "new" services under their
> alternate installation names? The installation part of this proposal could
> be automated in the foo-config scripts:
> if cygwin_17
> then service_name=sshd_17
> else service_name=sshd
> fi
> etc.
Consider that a parallel installation is not really for the normal user.
My answer to this question is, whatever is most convenient for you.
Personally I tend to option 3, without the changes in the foo-config
scripts. I'd do the second service installation manually. It's not
that hard.
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Red Hat
next prev parent reply other threads:[~2008-04-03 9:42 UTC|newest]
Thread overview: 132+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-02 12:36 Corinna Vinschen
2008-04-02 17:46 ` Corinna Vinschen
2008-04-02 23:01 ` Charles Wilson
2008-04-03 9:42 ` Corinna Vinschen [this message]
2008-04-03 13:56 ` Christopher Faylor
2008-04-03 14:20 ` Corinna Vinschen
2008-04-03 15:16 ` Igor Peshansky
2008-04-03 15:37 ` Corinna Vinschen
2008-04-03 15:39 ` Corinna Vinschen
2008-04-03 15:47 ` Corinna Vinschen
2008-04-03 23:13 ` Charles Wilson
2008-04-03 16:12 ` Christopher Faylor
2008-04-03 16:27 ` Corinna Vinschen
2008-04-03 17:00 ` Christopher Faylor
2008-04-03 17:12 ` Corinna Vinschen
2008-04-03 23:06 ` Charles Wilson
2008-04-04 0:39 ` Christopher Faylor
2008-04-04 1:51 ` Charles Wilson
2008-04-03 23:21 ` Warren Young
2008-04-04 0:41 ` Christopher Faylor
2008-04-03 22:52 ` Charles Wilson
2008-04-04 12:22 ` Corinna Vinschen
2008-04-05 10:09 ` Corinna Vinschen
2008-04-05 6:17 ` Karl M
2008-04-04 0:50 ` Christopher Faylor
2008-04-04 12:16 ` Corinna Vinschen
2008-04-08 16:27 ` Corinna Vinschen
2008-04-08 17:27 ` Christopher Faylor
2008-04-08 17:40 ` Corinna Vinschen
2008-04-08 18:42 ` Christopher Faylor
2008-04-08 21:07 ` Corinna Vinschen
2008-04-08 21:18 ` Brian Dessent
2008-04-08 21:46 ` Corinna Vinschen
2008-04-08 21:54 ` Corinna Vinschen
2008-04-08 23:27 ` Brian Dessent
2008-04-09 8:27 ` Corinna Vinschen
2008-04-09 11:34 ` Brian Dessent
2008-04-09 12:16 ` Corinna Vinschen
2008-04-09 12:28 ` Brian Dessent
2008-04-09 14:32 ` Christopher Faylor
2008-04-09 16:28 ` Corinna Vinschen
2008-04-11 15:13 ` Corinna Vinschen
2008-04-12 0:35 ` Brian Dessent
2008-04-12 11:36 ` Corinna Vinschen
2008-04-12 12:23 ` Corinna Vinschen
2008-04-12 12:43 ` Brian Dessent
2008-04-12 15:15 ` Corinna Vinschen
2008-04-12 17:43 ` Eric Blake
2008-04-12 23:00 ` Brian Dessent
2008-04-13 9:43 ` Corinna Vinschen
2008-04-13 19:35 ` Christopher Faylor
2008-04-14 9:56 ` Corinna Vinschen
2008-04-14 14:36 ` Christopher Faylor
2008-04-15 3:00 ` Brian Dessent
2008-04-15 8:55 ` Corinna Vinschen
2008-04-15 9:09 ` Corinna Vinschen
2008-04-15 9:24 ` Brian Dessent
2008-04-15 9:31 ` Corinna Vinschen
2008-04-15 9:35 ` Corinna Vinschen
2008-04-15 14:17 ` Christopher Faylor
2008-04-15 15:44 ` Corinna Vinschen
2008-04-15 16:16 ` Reini Urban
2008-04-15 17:59 ` Christopher Faylor
2008-04-15 18:39 ` Corinna Vinschen
2008-04-15 18:52 ` Lapo Luchini
2008-04-16 9:39 ` Corinna Vinschen
2008-04-16 16:25 ` Christopher Faylor
2008-04-20 15:45 ` Christopher Faylor
2008-04-20 18:47 ` Charles Wilson
2008-04-20 21:56 ` Christopher Faylor
2008-04-20 22:11 ` Christopher Faylor
2008-04-20 22:44 ` Charles Wilson
2008-04-20 22:55 ` Christopher Faylor
2008-04-20 23:08 ` Charles Wilson
2008-04-20 22:40 ` Charles Wilson
2008-04-21 8:33 ` Corinna Vinschen
2008-04-21 20:34 ` Corinna Vinschen
2008-04-21 20:54 ` Christopher Faylor
2008-04-15 18:58 ` Eric Blake
2008-04-16 2:25 ` Brian Dessent
2008-04-16 8:45 ` Corinna Vinschen
2008-04-21 14:04 ` Corinna Vinschen
2008-04-21 17:48 ` Corinna Vinschen
2008-04-21 20:15 ` Corinna Vinschen
2008-04-22 6:03 ` Brian Dessent
2008-04-22 6:59 ` Jörg Schaible
2008-04-22 8:26 ` Brian Dessent
2008-04-22 11:12 ` Corinna Vinschen
2008-04-22 8:48 ` Corinna Vinschen
2008-04-22 9:46 ` Brian Dessent
2008-04-22 10:57 ` Corinna Vinschen
2008-04-22 11:07 ` Brian Dessent
2008-04-22 14:44 ` Pēteris Kļaviņš
2008-04-22 14:56 ` Brian Dessent
2008-04-22 15:26 ` Pēteris Kļaviņš
2008-04-22 15:39 ` Brian Dessent
2008-04-22 23:18 ` Pēteris Kļaviņš
2008-04-23 9:27 ` Brian Dessent
2008-04-23 20:09 ` Pēteris Kļaviņš
2008-04-22 15:38 ` Corinna Vinschen
2008-04-14 23:24 ` Igor Peshansky
2008-04-15 3:08 ` Brian Dessent
2008-04-15 8:59 ` Corinna Vinschen
2008-04-12 12:24 ` Dr. Volker Zell
2008-04-12 12:32 ` Corinna Vinschen
2008-04-13 3:43 ` Christopher Faylor
2008-04-13 9:03 ` Corinna Vinschen
2008-04-13 19:47 ` Christopher Faylor
2008-04-13 4:44 ` Christopher Faylor
2008-04-13 9:05 ` Corinna Vinschen
2008-04-14 2:34 ` Christopher Faylor
2008-04-08 21:39 ` Christopher Faylor
2008-04-08 21:53 ` Corinna Vinschen
2008-04-11 16:27 ` Andrew Schulman
2008-04-11 16:37 ` Corinna Vinschen
2008-07-24 22:41 ` Phil Nelson
2008-07-25 4:21 ` Christopher Faylor
2008-07-25 7:21 ` Corinna Vinschen
2008-07-25 13:56 ` Phil Nelson
2008-07-25 14:20 ` Corinna Vinschen
2008-04-06 14:35 klavins
2008-04-06 21:04 ` Christopher Faylor
2008-04-08 18:34 Charles Wilson
2008-04-08 18:43 ` Christopher Faylor
2008-04-08 21:09 ` Corinna Vinschen
2008-04-09 15:04 Charles Wilson
2008-04-09 16:02 ` Corinna Vinschen
2008-04-22 15:51 Charles Wilson
2008-04-22 16:01 ` Corinna Vinschen
2008-04-25 11:22 ` Corinna Vinschen
2008-04-22 16:08 ` Brian Dessent
2008-04-22 17:02 ` Charles Wilson
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=20080403094220.GA21673@calimero.vinschen.de \
--to=corinna-cygwin@cygwin.com \
--cc=cygwin-apps@cygwin.com \
--cc=cygwin-developers@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).