From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-patches-bounces+larch=yhetil.org@gnu.org>
Received: from mp11.migadu.com ([2001:41d0:2:bcc0::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms5.migadu.com with LMTPS
	id oAFxM37LYWPUmgAAbAwnHQ
	(envelope-from <guix-patches-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 02 Nov 2022 02:44:30 +0100
Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp11.migadu.com with LMTPS
	id YHFuM37LYWP/IwEA9RJhRA
	(envelope-from <guix-patches-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 02 Nov 2022 02:44:30 +0100
Received: from lists.gnu.org (lists.gnu.org [209.51.188.17])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by aspmx1.migadu.com (Postfix) with ESMTPS id 88C573D2D4
	for <larch@yhetil.org>; Wed,  2 Nov 2022 02:44:30 +0100 (CET)
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-patches-bounces@gnu.org>)
	id 1oq2nU-00023a-86; Tue, 01 Nov 2022 21:44:04 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1oq2nS-00022c-UU
 for guix-patches@gnu.org; Tue, 01 Nov 2022 21:44:02 -0400
Received: from debbugs.gnu.org ([209.51.188.43])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1oq2nS-0002Zn-Lf
 for guix-patches@gnu.org; Tue, 01 Nov 2022 21:44:02 -0400
Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
 (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1oq2nS-0002Ka-B4
 for guix-patches@gnu.org; Tue, 01 Nov 2022 21:44:02 -0400
X-Loop: help-debbugs@gnu.org
Subject: [bug#57963] [PATCH v5 2/2] home: services: Support user's fontconfig
 configuration.
Resent-From: Taiju HIGASHI <higashi@taiju.info>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
Resent-CC: guix-patches@gnu.org
Resent-Date: Wed, 02 Nov 2022 01:44:02 +0000
Resent-Message-ID: <handler.57963.B57963.16673534148917@debbugs.gnu.org>
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: followup 57963
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: Liliana Marie Prikler <liliana.prikler@gmail.com>
Cc: Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@gnu.org>, 57963@debbugs.gnu.org,
 Andrew Tropin <andrew@trop.in>
Received: via spool by 57963-submit@debbugs.gnu.org id=B57963.16673534148917
 (code B ref 57963); Wed, 02 Nov 2022 01:44:02 +0000
Received: (at 57963) by debbugs.gnu.org; 2 Nov 2022 01:43:34 +0000
Received: from localhost ([127.0.0.1]:44508 helo=debbugs.gnu.org)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <debbugs-submit-bounces@debbugs.gnu.org>)
 id 1oq2n0-0002Jl-0f
 for submit@debbugs.gnu.org; Tue, 01 Nov 2022 21:43:34 -0400
Received: from mail-pg1-f182.google.com ([209.85.215.182]:46045)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <higashi@taiju.info>) id 1oq2mx-0002JW-KS
 for 57963@debbugs.gnu.org; Tue, 01 Nov 2022 21:43:32 -0400
Received: by mail-pg1-f182.google.com with SMTP id r18so14945878pgr.12
 for <57963@debbugs.gnu.org>; Tue, 01 Nov 2022 18:43:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=taiju-info.20210112.gappssmtp.com; s=20210112;
 h=content-transfer-encoding:mime-version:user-agent:message-id
 :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=QkJKgZQxO1ZXveDiXOzwDliUU4LDZeu3E1EABMepM0w=;
 b=wq1XqMIOihJxYVGZwc73t5gy/F98Cplele74dye4fbcUxiwh5TzU5dTRLmMYjeOhSP
 g5Z71oExAFUsbcgDHbUeyN4U564aHhUF+xd47Jq71Nx5r6NaQccKvuLm0nFpaXvlBP5L
 scqcI25i+zEsRSufxNL4rmI0UaAsfcZ2E0/QqHmFby7+09PRAEm+gUXsvwcRPqz1o8+G
 x9eOfAJC25ClNP2tcWg45vwj2ElMY7M54foOzrLsAJOVqn4ZLFD0yfrsyiz34v/Ue7oK
 RZpMeAX7iGVQvnFfbfpy1u48XRiS7B6m9FsdPEdRQZFk644k2mQRGkqZ5QXHd10Cf1mm
 T/6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=content-transfer-encoding:mime-version:user-agent:message-id
 :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=QkJKgZQxO1ZXveDiXOzwDliUU4LDZeu3E1EABMepM0w=;
 b=L26WJnSh7vatgfDQIBFDRbNU9Sxr49clspJRKeuB+rleJi9Ct6FXeY2fgbtSt7zXNS
 vWz+213KxglaaosVsP2n2tNgSsK4Bq1ZRYGwRvGZQswYpIJhTPrlZaokpt7zmQYNcHcF
 /WqlEY+CbRkmR5adIrlFxeTi6cvmKu8MMXOh/4wTeueC2uoF2GtE3upAyZnSRGT9wg1v
 xhgMGvteWcphImsrmCBZvR8/NpKO9dST/2gRb5IMwkLsjmKYkGUUe9BTdw/LMNw5TMsw
 ASV8uSo7Lx50R+6qAXZQvv86h6oqSwixk7J2qAwH9EgBO4DbxmjYvehrNbBsulC+Z2Ew
 Zvzw==
X-Gm-Message-State: ACrzQf1NQZ3fwsRYx/PbtyLHxwua/1lXhYoxJqUh9l7uQ4iIHQ6rxBU/
 Mg2sPGGPlrIUe4OIJRpbrEMjJRDxPmYLVMgJ
X-Google-Smtp-Source: AMsMyM6Fvqxa9NMZlOar60IqYIjTA57HAVHGMvGZyb/VzGb2Na/y57LPEh+xfgKOuJ7DAic00Z53ag==
X-Received: by 2002:a63:454d:0:b0:43c:e834:ec0 with SMTP id
 u13-20020a63454d000000b0043ce8340ec0mr20418103pgk.270.1667353405193; 
 Tue, 01 Nov 2022 18:43:25 -0700 (PDT)
Received: from Taix ([240b:253:ec40:2400:b7d1:436e:2d61:e925])
 by smtp.gmail.com with ESMTPSA id
 k28-20020aa7999c000000b0056bfebfa6e4sm7092657pfh.190.2022.11.01.18.43.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 01 Nov 2022 18:43:24 -0700 (PDT)
From: Taiju HIGASHI <higashi@taiju.info>
References: <87k053sxur.fsf@gnu.org> <87zgdzat99.fsf@trop.in>
 <87zgdxgx0l.fsf@taiju.info> <875ygiqur9.fsf@gnu.org>
 <87r0z5e23k.fsf@taiju.info> <87czanebhd.fsf@taiju.info>
 <871qqtapbo.fsf@taiju.info>
 <20a8312539654df3c98954620979078e3e41a150.camel@gmail.com>
 <87r0yt96iy.fsf@taiju.info>
 <c9ed26b9378d8af618498daebb36d416b826ca3e.camel@gmail.com>
Date: Wed, 02 Nov 2022 10:43:21 +0900
In-Reply-To: <c9ed26b9378d8af618498daebb36d416b826ca3e.camel@gmail.com>
 (Liliana Marie Prikler's message of "Thu, 27 Oct 2022 08:36:42 +0200")
Message-ID: <87y1sugmh2.fsf@taiju.info>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
X-BeenThere: debbugs-submit@debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
X-BeenThere: guix-patches@gnu.org
List-Id: <guix-patches.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-patches>,
 <mailto:guix-patches-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-patches>
List-Post: <mailto:guix-patches@gnu.org>
List-Help: <mailto:guix-patches-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-patches>,
 <mailto:guix-patches-request@gnu.org?subject=subscribe>
Sender: "Guix-patches" <guix-patches-bounces@gnu.org>
Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org
X-Migadu-Flow: FLOW_IN
X-Migadu-Country: US
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1667353470;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:cc:mime-version:mime-version:
	 content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:resent-cc:
	 resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to:
	 references:references:list-id:list-help:list-unsubscribe:
	 list-subscribe:list-post:dkim-signature;
	bh=QkJKgZQxO1ZXveDiXOzwDliUU4LDZeu3E1EABMepM0w=;
	b=kKV/vbn/0D43UmhhE5TZtMuC+xnjrf78juBY5R42kLCJkZWCWvI0mbR6KgRH5U7+WCsEzF
	1XGx+UEMvcLxdSTFtvwBMi8QJt8EAr2EHxsnMo7wUWd9rQC3+wn7zWdNLD4fu4WoHHSu0G
	8bYR+Otcg4l4oGuU52FtNB178qgb/z4mcntBtVxDE+LKfLrzTk8BhBpVfs293T1glqDocp
	BkwRE10PIdxcAhidAM5gzjVk1OWfDrJPHiNEKWoa6KXJS8fuTmtHBmytFSmyGBlvM8ip0b
	CPFMrCceMrJu2CigvIagtoZ05xwQp9sDQh58yquPryGIT+lR6J+oCnk90SKmLw==
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1667353470; a=rsa-sha256; cv=none;
	b=SkAbuUZ1iZkRNd1yEDN++izkabzloBu/AGE73mYera4VFzh3dXe7UhJ+/ufrR5DYX+MuFV
	m9O8YnZjbh1dOnhCPY0JOP+fj2XUEhzF9dUv+omqEuFYDffNpUmuWQOjoq+krILflCumIO
	nz/4noBvKQn6zpLzRWr8XJk+YGvDF5sCMoSE6tdGfhRogUhQcRB2w2DnNujNqg3paw/ALg
	7HFjNI9Snh5SoCMPDQdfJWw2pQOLZBAETlSBJj4Zoc4+EUlecHBkYrvGEWwC5IXuJCg+KF
	KvNKScu/NXHfM2QNJ0mGPIVg8Dxjd0Wu5JRr2ht15E5S9Ue/shfXUOLNvO//3Q==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=fail ("headers rsa verify failed") header.d=taiju-info.20210112.gappssmtp.com header.s=20210112 header.b=wq1XqMIO;
	dmarc=none;
	spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"
X-Migadu-Spam-Score: 2.52
Authentication-Results: aspmx1.migadu.com;
	dkim=fail ("headers rsa verify failed") header.d=taiju-info.20210112.gappssmtp.com header.s=20210112 header.b=wq1XqMIO;
	dmarc=none;
	spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"
X-Migadu-Queue-Id: 88C573D2D4
X-Spam-Score: 2.52
X-Migadu-Scanner: scn1.migadu.com
X-TUID: 4yPGZxGvww4h

Hi,

Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

> Am Donnerstag, dem 27.10.2022 um 14:31 +0900 schrieb Taiju HIGASHI:
>> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>>
>> > Am Donnerstag, dem 27.10.2022 um 13:00 +0900 schrieb Taiju HIGASHI:
>> > > Sorry for the long time it has taken to resolve the issue.
>> > > What do you think about it?
>> > Putting the discussion with Declan aside, the last thing mentioned
>> > was
>> > not trying to mix SXML and XML-in-strings.=A0 Ludo offered the
>> > solutions:
>> > 1. Taking a <fontconfig-configuration> or a file-like object
>> > 2. (Optionally) using a gexp-compiler for the former
>> >
>> > Cheers
>>
>> Sorry for the lack of clarity.
>> I had sent you a past email confirming that the direction of the
>> implementation was correct and was waiting for your response.
>>
>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D57963#239
> Ahh, I missed that.  If you pull in the XML declarations and the
> <fontconfig></fontconfig> stuff to the serialization, you should
> basically have most of what you'd need for a G-Exp compiler, but even
> if not it'd simplify this to
>
> (match
>   ((? home-font-config-configuration? config)
>    (serialize-... config ...))
>   ((? file-like? config) config))
>
> Not sure if a match for type-checking would be needed since it's
> already taken care of elsewhere, so writing it just in case.
>
> Cheers

Sorry for my response delay.
Is my recognition correct?  I have plan to rewrite it as below.

--8<---------------cut here---------------start------------->8---
(define (serialize-fontconfig-configuration config)
  (define start-of-fontconfig "<?xml version=3D'1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>")

  (define end-of-fontconfig "</fontconfig>\n")

  (mixed-text-file
   "fonts.conf"
   start-of-fontconfig
   (serialize-configuration config home-fontconfig-configuration-fields)
   end-of-fontconfig))

(define (add-fontconfig-config-file user-config)
  `(("fontconfig/fonts.conf"
     ,(match user-config
          ((? home-fontconfig-configuration? user-config)
           (serialize-fontconfig-configuration user-config))
        ((? file-like? user-config) user-config)))))
--8<---------------cut here---------------end--------------->8---

Thanks,
--=20
Taiju