如何在nixpkgs中正确configurationOpenJDK应用程序的字体?

当我在Docker中使用nixpkgs环境运行IntelliJ时,在GUI中看到很多缺less的字符: 在这里输入图像说明

一个可能不相关的问题是,select文本的行为(如果可以select的话)似乎改善了这种情况 – 请参阅所附截图中从第二到第三张图片的转换。

我有一个相对容易重现的例子 (假设有一个docker可用)。 我没有直接在NixOS上testing过,但是可能要尝试下一步排除问题:我目前的设置基于kurron / docker-intellij的设置 ,没有这个问题(我和他最终都是基于这个问题的)在相同的Ubuntu 16.04 docker镜像上),导致我相信这是nixpkgs中的OpenJDK中的一个问题,或者是nixpkgs X / fonts和使用的Ubuntu基本系统之间的一些不良交互。

要重现,您现在可以忽略README,只要:

source build.sh ./idea.sh # This will start the container idea-ultimate # this should be run inside the container 

请注意idea.sh运行xhost +并执行一些卷装,所以如果您担心,请在运行之前检查一下。

事情似乎没有来自同一个容器的字体问题:

  • gedit (不涉及java: nix-env -i gedit
  • JDiskReport :(涉及java – 字体工作,但看起来不太好,所以可能是一个单独的问题); 用wget下载,解unzip并用java -jar ...运行java -jar ...

我认为IntelliJ仍然是基于Swing – 但还没有看到任何最近的确认。 如果是这样,我可以做更有针对性的testing。