52 lines
1.4 KiB
Nix
52 lines
1.4 KiB
Nix
{ pkgs, ... }:
|
||
|
||
let
|
||
hp-uld = pkgs.callPackage ../pkgs/hp-uld-driver.nix { };
|
||
cjkSans = "${pkgs.noto-fonts-cjk-sans}/share/fonts/opentype/noto-cjk/NotoSansCJK-VF.otf.ttc";
|
||
gsLib = pkgs.runCommand "gs-cjk-lib" { } ''
|
||
mkdir -p $out
|
||
cat > $out/cidfmap <<CID
|
||
% Ghostscript CJK CID map for missing embedded fonts in PDF/PS
|
||
/Adobe-GB1 << /FileType /TrueType /Path (${cjkSans}) /SubfontID 0 /CSI ([Adobe-GB1] 0) >> ;
|
||
/Adobe-CNS1 << /FileType /TrueType /Path (${cjkSans}) /SubfontID 1 /CSI ([Adobe-CNS1] 0) >> ;
|
||
CID
|
||
'';
|
||
in
|
||
{
|
||
services.printing.enable = true;
|
||
# HP Laser MFP 13x 需官方 ULD(rastertospl)
|
||
services.printing.drivers = [ hp-uld ];
|
||
|
||
fonts.packages = with pkgs; [ arphic-uming ];
|
||
|
||
fonts.fontconfig.localConf = ''
|
||
<?xml version="1.0"?>
|
||
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
|
||
<fontconfig>
|
||
<alias binding="same">
|
||
<family>ARPLUmingCN</family>
|
||
<prefer>
|
||
<family>AR PL UMing CN</family>
|
||
<family>Noto Serif CJK SC</family>
|
||
</prefer>
|
||
</alias>
|
||
<alias binding="same">
|
||
<family>NotoSansMonoCJKSC</family>
|
||
<prefer>
|
||
<family>Noto Sans Mono CJK SC</family>
|
||
</prefer>
|
||
</alias>
|
||
</fontconfig>
|
||
'';
|
||
|
||
systemd.services.cups.serviceConfig.Environment = [
|
||
"FONTCONFIG_FILE=/etc/fonts/fonts.conf"
|
||
"FONTCONFIG_PATH=/etc/fonts"
|
||
"GS_LIB=${gsLib}"
|
||
];
|
||
|
||
services.printing.extraFilesConf = ''
|
||
SetEnv GS_LIB ${gsLib}
|
||
'';
|
||
}
|