Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vTNAH-0002wQ-39 for pgsql-hackers@arkaria.postgresql.org; Wed, 10 Dec 2025 16:35:47 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vTNAH-00CnYk-03 for pgsql-hackers@arkaria.postgresql.org; Wed, 10 Dec 2025 16:35:45 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vTNAG-00CnYc-1h for pgsql-hackers@lists.postgresql.org; Wed, 10 Dec 2025 16:35:45 +0000 Received: from toucan.tulip.relay.mailchannels.net ([23.83.218.254]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vTNAD-0000X6-26 for pgsql-hackers@lists.postgresql.org; Wed, 10 Dec 2025 16:35:44 +0000 X-Sender-Id: dreamhost|x-authsender|nico@cryptonector.com Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 50EAB443A26; Wed, 10 Dec 2025 16:35:39 +0000 (UTC) Received: from pdx1-sub0-mail-a238.dreamhost.com (100-103-1-24.trex-nlb.outbound.svc.cluster.local [100.103.1.24]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id B438E442C26; Wed, 10 Dec 2025 16:35:38 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; d=mailchannels.net; s=arc-2022; cv=none; t=1765384538; b=LZlaNzEbveBL8v09i0Jb7rInuLdfEfuYgNxzU0wNE+I+KMb22bASwffwfSgihb31q62bID jKl2snQzsmPVjNy5S6JWEz84h0tDjP1qkmsInKubNHJGr6MADI3lcJtr3Ubkv66K3ZvXXv NU6KYylDmotw2NU48pSY4UOv52aCP7BvcJ/yDd5PNH+gGfOBsyV5X0RY8+Ez29J+y2duED qLucYESIaq0euM9yXJbXOiZwK924doaCxvBqrB92zbL7Z6tROzqBcfeNa0AlnFgECjOHv3 P9nhia0OXd29mLKpYcQ6+WVx1y3/XmtkM7g04O/e27MGaBL6gy0dqo3HlGrLmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1765384538; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references:dkim-signature; bh=JxwbSzz7KtaFD5MV70XPV+TkB78z9Wzndh8Bh/xdy6k=; b=uqOgRXjGPcoQpcObH+thdEOMnR9C9YT+zswDBOFceES47y4lFrGUCJYi/tL4ZeBJVTAdx2 whJrKXUOmtsQUvId3ciY/yM7LadQBBh/mlHFIstB2vpWVA12x7F5S0c4FF06wLjKAEi/sv F3a67Or/ESSGR2D7ZkeemoUszPA7C9Hkp/jHwKMp/lraqa2i7ytDNK6l/9e8tzQlQTsiXe 72v3Am4yuvTYfzwf4NzJ2Q0EzQ6LGhso8lI8S75AuylzG6dPgGG7I/gwKZMAfcCNXlm0rh Z1snZ0XBAimtSTog84Ck7JRYM1dVQ4nNWZbeVzSzMAgCK5R4UQzLtILu0hNiPw== ARC-Authentication-Results: i=1; rspamd-57b9fc4dc5-qrkvq; auth=pass smtp.auth=dreamhost smtp.mailfrom=nico@cryptonector.com X-Sender-Id: dreamhost|x-authsender|nico@cryptonector.com X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|nico@cryptonector.com X-MailChannels-Auth-Id: dreamhost X-Share-Thread: 124644f123c560c3_1765384539040_3751223841 X-MC-Loop-Signature: 1765384539040:1637536127 X-MC-Ingress-Time: 1765384539039 Received: from pdx1-sub0-mail-a238.dreamhost.com (pop.dreamhost.com [64.90.62.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.103.1.24 (trex/7.1.3); Wed, 10 Dec 2025 16:35:39 +0000 Received: from ubby (unknown [75.81.95.64]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by pdx1-sub0-mail-a238.dreamhost.com (Postfix) with ESMTPSA id 4dRLtd6xxPzyqL; Wed, 10 Dec 2025 08:35:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cryptonector.com; s=dreamhost; t=1765384538; bh=JxwbSzz7KtaFD5MV70XPV+TkB78z9Wzndh8Bh/xdy6k=; h=Date:From:To:Cc:Subject:Content-Type; b=GSXchUBGnsMObzWUT/xdgtowfaadvBM0HHFChPlD4l7qvOAtUtn/yqRjizmWrgLF/ RitdNTqDUW39l0T7lvl7g+27/OvBMLmfotDLL4jmlQG5+gAAD/N0VoOhRH9bYUbDrq dDSr/VFw8MFf0RyAGULaU3+fs/cHj/t+qomm7TS5VwAJ9esQGaBTXgMhwMo4x+XzFZ m2sFJX+ZNBoHPWNuRMYvA9/cJNiUC2G7Caziq5UkgAbU3LFpricyPpvRshpqObXIXI l48wxfxmx8U6BVBXQ3JIJQ6TbZ2wNld8nIB6Ttisk3uDF8uIK3JbKvoVP2lcNKyvvM kg7eOzMfoStBQ== Date: Wed, 10 Dec 2025 10:35:35 -0600 From: Nico Williams To: Peter Eisentraut Cc: Tom Lane , pgsql-hackers@lists.postgresql.org Subject: Re: Solaris versus our NLS files Message-ID: References: <292844.1765315339@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Wed, Dec 10, 2025 at 05:02:14PM +0100, Peter Eisentraut wrote: > On 09.12.25 22:22, Tom Lane wrote: > > At least Solaris is kind enough to let you do that with > > symlinks [2], so that after > > > > cd $INSTALLATION/share/locale > > ln -s es es_ES.UTF-8 > > > > translation starts working for that particular value of > > lc_messages. > > > > This policy dictates making a rather large number of symlinks > > in that directory, which we've never done TTBOMK. > > How would one know all the country codes to create links for? Does OpenIndiance really require this? Oh, I guess it does: https://src.illumos.org/source/xref/illumos-gate/usr/src/lib/libc/port/i18n/gettext_util.c?r=00ae5933&fi=mk_msgfile#mk_msgfile That's a bummer. Well, a list of country codes can probably be hardcoded into PG's build. Or... the installation packaging could check at install time what locales are installed and create these symlinks (but this is unsatisfying because what if the locales in question get installed after PG?). Maybe PG should contribute a fix to Illumos :joy: Nico --