Linux

使用 nixOS 安裝輸入字型時出現問題,如何使用“nix-store –add-fixed”?

  • April 11, 2021

NixOS 版本:20.09.3765.d6f63659a70 (Nightingale)

我正在嘗試在 NixOS 上安裝輸入字型(我對它很陌生)。

即使我的 /etc/nixos/configuration.nix 中有以下幾行,我似乎也無法在 NixOS 上安裝輸入字型

fonts.fonts = with pkgs; [
 input-fonts
];

nixpkgs.config.allowUnfree = true;
nixpkgs.config.input-fonts.acceptLicense = true;

嘗試時nixos-rebuild switch,我收到以下錯誤:

***
Unfortunately, we cannot download file Input-Font.zip automatically.
Please go to https://input.fontbureau.com/download/ to download it yourself, and add it to the Nix store
using either
 nix-store --add-fixed sha256 Input-Font.zip
or
 nix-prefetch-url --type sha256 file:///path/to/Input-Font.zip

***

看起來問題是無法從 Fontbureau 頁面訪問靜態下載 URL。

所以我手動下載了 zip 並執行nix-store --add-fixed sha256 Input-Font.zip,但坦率地說,我真的不知道如何處理輸出,而 –add-fixed 的文件並沒有真正為我提供任何啟示。

我得到這樣的輸出:/nix/store/7vqs2n6hrnwgd9hf6rxyhg5hx5qnrd2s-Input-Font.zip

有沒有人更熟悉以這種方式安裝軟體包能夠闡明如何處理這個問題?


或者,我可以從我手動下載的文件中安裝字型,但我也不清楚如何做到這一點,NixOS 文件狀態:

Adding personal fonts to ~/.fonts doesn't work

The ~/.fonts directory is being deprecated upstream[1]. It already doesn't work in NixOS.

The new preferred location is in $XDG_DATA_HOME/fonts, which for most users will resolve to ~/.local/share/fonts

我也嘗試在 ~/.local/share/fonts 中添加字型檔,但是當我嘗試在任何配置中使用它們時它們仍然無法被辨識。


任何使這些字型工作的方法的幫助將不勝感激!

好吧,原來我還有一些 linux 命令來學習手動安裝字型。

最後這就是我所做的:

將 Input Mono 的所有 TTF 文件移動到 ~/.local/share/fonts 中,並(單獨)執行以下命令:

fc-cache -f -v fc-list | grep "Input"

fc-cache 似乎刷新了字型的記憶體,使用 grep 的 fc-list 列印出已安裝的輸入字型的名稱和样式,然後我可以在配置中使用它們。

Alacritty 配置能夠即時切換字型,nix 配置字型更改需要重新啟動。

按照這些說明操作後,您應該重試安裝。如果雜湊完全匹配,您將克服您遇到的錯誤。

編輯:它似乎input-fonts壞了,這就是它不起作用的原因;請關注https://github.com/NixOS/nixpkgs/pull/118665

引用自:https://unix.stackexchange.com/questions/644439