delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/10/19/11:44:11

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Fri, 19 Oct 2007 17:43:42 +0200
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: [ANNOUNCEMENT] Updated: bash-3.2.25-17
Message-ID: <20071019154342.GL20400@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <announce DOT 4716C52A DOT 7090600 AT byu DOT net> <Pine DOT GSO DOT 4 DOT 63 DOT 0710181326370 DOT 440 AT access1 DOT cims DOT nyu DOT edu> <20071019080115 DOT GF20400 AT calimero DOT vinschen DOT de> <Pine DOT GSO DOT 4 DOT 63 DOT 0710190928080 DOT 24263 AT access1 DOT cims DOT nyu DOT edu> <4718B2C1 DOT 2090308 AT byu DOT net> <Pine DOT GSO DOT 4 DOT 63 DOT 0710190937220 DOT 24263 AT access1 DOT cims DOT nyu DOT edu>
MIME-Version: 1.0
In-Reply-To: <Pine.GSO.4.63.0710190937220.24263@access1.cims.nyu.edu>
User-Agent: Mutt/1.5.16 (2007-06-09)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Oct 19 09:46, Igor Peshansky wrote:
> On Fri, 19 Oct 2007, Eric Blake wrote:
> > According to Igor Peshansky on 10/19/2007 7:29 AM:
> > > I could, but the issue is more basic than where the script lives.  Right
> > > now Cygwin populates the /dev directory as a virtual directory within the
> > > DLL.  The script I'm talking about will make /dev a real directory, and
> > > the only thing Cygwin will deal with is devices.

I don't see the point.

> > > What the transition would entail is not clear to me.
> >
> > But the bash postinstall script already creates /dev as a real directory,
> > as of my release announcement; it just isn't very populated.  I think
> > making the script its own package in base, then making bash depend on that
> > package, would be worthwhile.

...and the syslog-ng-config as well as the syslogd-config scripts
also create /dev if it doesn't exist so that syslog-ng/syslogd can
create a /dev/log socket.

> Sorry, I was imprecise.  Whether /dev is a real directory or not is
> irrelevant.  However, the *files* in /dev are virtual, and therefore the
> command "mknod -m 666 c 1 3 /dev/null" will fail, because, as far as the
> Cygwin DLL is concerned, /dev/null already exists.
> 
> Plus, we might get into some ordering issues on when to run this script...

I'm under the impression you're thinking about this too complicated.
The script could be a postinstall script in the Base category, so it's
getting run automatically on install.

Cygwin itself does not depend on the existence of /dev, so there's no
problem with order or so.  For the virtual devices which are handled by
Cygwin you don't need to call mknod.  Just create empty files, like
this:

  $ touch `cygpath -am /dev`/null
  $ ls -l /dev/null
  crw-rw-rw- 1 corinna root 1, 3 Dec  1  2006 /dev/null

As you can see, Cygwin does never evaluate a DOS path as virtual device,
while it always evaluates the POSIX path into the virtual device.  Voila.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019