Fonts: Difference between revisions

m corrected the command for running fc-cache in a flatpak app
Flukx (talk | contribs)
copy from nixos.wiki: how to in nix-shell
 
(One intermediate revision by one other user not shown)
Line 67: Line 67:
{  
{  
   fonts.packages = builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
   fonts.packages = builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
}
# or if you already have fonts.packages set
{
  fonts.packages = [
    # ... some fonts
  ]
  ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
}
}
</nowiki>|name=/etc/nixos/configuration.nix|lang=nix}}
</nowiki>|name=/etc/nixos/configuration.nix|lang=nix}}
Line 110: Line 119:
fc-list -v | grep -i source
fc-list -v | grep -i source
</syntaxhighlight>
</syntaxhighlight>
=== Install fonts in nix-shells ===
<code>fonts</code> is not available as set-valued option in <code>mkshell</code> (gives you an error because it tries to coerce an attribute set into a string). Instead, insert the following:<ref>ihttps://programming.dev/post/32484220</ref>
<syntaxhighlight lang="nix">
{pkgs ? import <nixpkgs> {} }:
let
  fontsConf = pkgs.makeFontsConf {
    fontDirectories = [
      # your needed fonts here, e.g.:
      pkgs.font-awesome
      pkgs.atkinson-hyperlegible-next
    ];
  };
in
  pkgs.mkShell {
    packages = with pkgs; [
      # your font-dependent packages, e.g.:
      typst
    ];
    shellHook = ''
      export FONTCONFIG_FILE="${fontsConf}"
    '';
  }
</syntaxhighlight>
Then <code>typst fonts</code> finds the installed fonts in the nix-shell.


== Configuring fonts ==
== Configuring fonts ==