X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Fri, 19 Oct 2007 18:09:00 -0400 (EDT) From: Igor Peshansky Reply-To: cygwin AT cygwin DOT com To: cygwin AT cygwin DOT com Subject: Re: [ANNOUNCEMENT] Updated: bash-3.2.25-17 In-Reply-To: <20071019154342.GL20400@calimero.vinschen.de> Message-ID: References: <20071019080115 DOT GF20400 AT calimero DOT vinschen DOT de> <4718B2C1 DOT 2090308 AT byu DOT net> <20071019154342 DOT GL20400 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , 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 Fri, 19 Oct 2007, Corinna Vinschen wrote: > 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. Ok, fair enough. There was a mailing list discussion a while ago that involved Christopher Faylor stating that he'd like to see such functionality at some point, so I figured I'd work on a script to do that. If Cygwin wants to keep the files in /dev virtual, I have no problems keeping the current create_devices.sh script. > > > > 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. Yes, I already corrected myself that I meant the files in /dev, not /dev itself. > > 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. That is exactly what the current create_devices.sh does. Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu | igor AT watson DOT ibm DOT com ZZZzz /,`.-'`' -. ;-;;,_ Igor Peshansky, Ph.D. (name changed!) |,4- ) )-,_. ,\ ( `'-' old name: Igor Pechtchanski '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! Belief can be manipulated. Only knowledge is dangerous. -- Frank Herbert -- 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/