Subject: Re: [PATCH 0/1] Add poppler-with-data.

From: Liliana Marie Prikler <[email-masked]>
Date: Wed, 26 Jan 2022 08:37:30 +0100

Hi Taiju,

Am Mittwoch, dem 26.01.2022 um 08:59 +0900 schrieb Taiju HIGASHI:
> Hi,
> 
> I would like to view PDF files in Japanese with a viewer such as
> Evince, but it seems that it cannot render Japanese at present, so I
> wrote a patch.
> 
> As far as I know, in order for Poppler to render CJK text, one of the
> following conditions must be met
> 
> 1. Install poppler with poppler-data preinstalled.
> 2. Install poppler, then poppler-data in the path expected by
> poppler. (`POPPLER_INSTALL_PREFIX/share/poppler`)
> 
> ref:
> https://github.com/freedesktop/poppler/blob/277f5de9684b3392f0d585bd36ad1a5e9e9e9ed7/CMakeLists.txt#L348-L362
> 
> Guix provides poppler and poppler-data as standalone packages, but
> installing both will not satisfy either of the above prerequisites.
> 
> So I defined poppler with poppler-data as a package with the name
> popper-with-data.
> 
> This package is intended to be used in the installation of packages
> that also have poppler as a dependency, as shown below.
> 
>    guix package -i evince --with-input=poppler=poppler-with-data
> 
> However, As a user, this is still a bit of a hassle, so if you have a
> better idea, I'd like to see it.
That seems to be one solution, but note that the Qt5 variants of
poppler would still be affected by that bug.  Now note, that poppler-
data itself does not depend on poppler, so we could simply add it as
input to the poppler package.  However, this can not be done on master,
because it'd cause 7k+ rebuilds.  Instead, I suggest we make poppler-
with-data a replacement for poppler, which should by package/inherit
then also apply to the other variants.

I've CC'd Marius, Tobias and Leo to aid me in my judgement here, but I
think grafts would be necessary if we don't want to do input rewriting
with several variants.

> Incidentally, it seems that Nix had defined its own environment
> variable (PLOPPER_DATADIR) to deal with this problem.
Are there any other packages you might want to install into
POPPLER_INSTALL_PREFIX?  If so, a colon-separated POPPLER_DATA_PATH
should be preferred.  Note that if we add that feature, we'd still have
to graft it on master currently.

Cheers