From owner-freebsd-emulation@FreeBSD.ORG Tue Aug 22 19:58:14 2006 Return-Path: X-Original-To: freebsd-emulation@freebsd.org Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 34AA416A4E0 for ; Tue, 22 Aug 2006 19:58:14 +0000 (UTC) (envelope-from rick@kiwi-computer.com) Received: from kiwi-computer.com (megan.kiwi-computer.com [63.224.10.3]) by mx1.FreeBSD.org (Postfix) with SMTP id 67FEF43D53 for ; Tue, 22 Aug 2006 19:58:11 +0000 (GMT) (envelope-from rick@kiwi-computer.com) Received: (qmail 82043 invoked by uid 2001); 22 Aug 2006 19:58:09 -0000 Date: Tue, 22 Aug 2006 14:58:09 -0500 From: "Rick C. Petty" To: Joey Mingrone Message-ID: <20060822195809.GB81968@megan.kiwi-computer.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.1i Cc: freebsd-emulation@freebsd.org Subject: Re: problem with file selection dialog boxes under linux apps X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: rick-freebsd@kiwi-computer.com List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 19:58:14 -0000 On Tue, Aug 22, 2006 at 03:55:38PM -0300, Joey Mingrone wrote: > > I've noticed a strange problem with the file dialogue boxes, in some > linux applications such as acroread7 and linux-firefox. The problem > is that not all directories are listed. For example, when I browse to > /usr/ the directory local doesn't show up. If I open the native > firefox instead of linux-firefox all directories are properly listed. I'm pretty sure this has to do with how the compat layer works.. The linuxulator effectively does a "unionfs" between the freebsd filesystem (everything) and the linux stuff (/usr/compat/linux/). When you try to access a file, if the file exists in /usr/compat/linux/ that's the file which is referenced. If not, the same filename is used against /. In standard file operations boxes, the linux code is doing an opendir/readdir, and obviously anything "hidden" in the freebsd layer isn't going to be shown. Hence, this isn't a true unionfs. In your case, because /usr/ exists as /usr/compat/linux/usr/ you won't see anything besides what's in that directory. I actually like the idea that my freebsd files are hidden from linux, and I think this was the intent of the ABI authors. -- Rick C. Petty