From mboxrd@z Thu Jan 1 00:00:00 1970 From: iyzsong@member.fsf.org (=?utf-8?B?5a6L5paH5q2m?=) Subject: Re: [PATCH 1/2] build: union: Add create-all-directory? parameter to union-build Date: Sun, 26 Feb 2017 16:23:16 +0800 Message-ID: <8737f12wej.fsf@member.fsf.org> References: <20170218004427.12392-1-huang_ying_caritas@163.com> <87tw7jn4mo.fsf@163.com> <20170224150256.641cb08d@scratchpost.org> <871suma1w0.fsf@163.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:59378) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1chuC3-0004VM-1F for guix-devel@gnu.org; Sun, 26 Feb 2017 03:28:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1chuBz-00068g-S5 for guix-devel@gnu.org; Sun, 26 Feb 2017 03:28:35 -0500 Received: from lb1.openmailbox.org ([5.79.108.160]:44840 helo=mail.openmailbox.org) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1chuBz-00068N-L1 for guix-devel@gnu.org; Sun, 26 Feb 2017 03:28:31 -0500 In-Reply-To: <871suma1w0.fsf@163.com> (Ying Huang's message of "Sat, 25 Feb 2017 20:30:39 +0800") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: "Huang, Ying" Cc: guix-devel@gnu.org "Huang, Ying" writes: Hi, sorry for my late reply. > Danny Milosavljevic writes: > >> Hi, >> >> yeah, I've looked at it and I see what you are trying to do. >> >> You modified 'union to replicate the directory tree and symlink only the non-directory files - in order to be able to add "fonts.dir" in those directories. >> >> The previous version symlinked entire directories, too, and you wouldn't have been able to add those "fonts.dir" files inside them later. >> >> Your fix seems kinda hacky - but I don't really see a downside. >> >> Thinking about it some more I think it looks good enough to me. I'd like a second opinion, though. >> >> Other than that, the name of the new flag "create-all-directory?" is weird. I'd like it to be something like "create-all-directories?". >> >> (The non-hacky solution would be to make 'union aware that there are >> "fonts.dir" files to go in there, too. One could do that by adding >> these as an input, too. I'm not sure whether that would be worth the >> added complexity, though - especially since the fonts.dir generator >> needs to have the finished union as input and not just single >> directories one by one. Thoughts?) > > union will only be called with create-all-directory? != nil for packages > have share/fonts directories. And for these packages, we plan to remove > the fonts.dir and fonts.scale files, so that we need to create all > directories for them after all. Is this good enough? > Yes, I thought so and it will work, but maybe it's better (non-hacky way?) to make every font package install fonts.scale and fonts.dir files into its own directory... IIUC, to make them useful, we have to make the fonts directories available to the running X server through xserver.conf (FontPath) or adding them using 'xset +fp'. And since either method is limited to a single directory, so if we avoid the collision by putting each font package under an unique path ($out/share/fonts/TYPE/FONT-NAME), then the font-dir profile hook is not needed at all. We can do this in the wanted (upcoming?) 'font-build-system'.