nix: flatpak fonts & icons

This commit is contained in:
js0ny 2025-10-15 03:04:44 +01:00
parent 0c6d0edb42
commit af7c7b49f2
4 changed files with 57 additions and 40 deletions

View file

@ -2,8 +2,7 @@
pkgs,
config,
...
}:
let
}: let
fontPkgs = [
pkgs.maple-mono.NF
pkgs.sarasa-gothic
@ -14,8 +13,7 @@ let
pkgs.noto-fonts-emoji
pkgs.nerd-fonts.jetbrains-mono
];
in
{
in {
environment.systemPackages = fontPkgs;
fonts = {
@ -29,44 +27,46 @@ in
"Maple Mono NF"
"JetBrainsMono Nerd Font"
];
serif = [ "LXGW WenKai" ];
sansSerif = [ "LXGW Neo XiHei" ];
serif = ["LXGW WenKai"];
sansSerif = ["LXGW Neo XiHei"];
};
};
fontDir.enable = true;
};
system.fsPackages = [ pkgs.bindfs ];
fileSystems =
let
mkRoSymBind = path: {
device = path;
fsType = "fuse.bindfs";
options = [
"ro"
"resolve-symlinks"
"x-gvfs-hide"
];
};
aggregated = pkgs.buildEnv {
name = "system-fonts-and-icons";
paths = fontPkgs; # with pkgs; [
# libsForQt5.breeze-qt5
# noto-fonts
# noto-fonts-emoji
# noto-fonts-cjk-sans
# noto-fonts-cjk-serif
# ];
pathsToLink = [
"/share/fonts"
"/share/icons"
];
};
in
{
# Create an FHS mount to support flatpak host icons/fonts
"/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons";
"/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts";
system.fsPackages = [pkgs.bindfs];
fileSystems = let
mkRoSymBind = path: {
device = path;
fsType = "fuse.bindfs";
options = [
"ro"
"resolve-symlinks"
"x-gvfs-hide"
];
};
aggregated = pkgs.buildEnv {
name = "system-fonts-and-icons";
paths =
fontPkgs
++ [
# Add cursor supports
pkgs.libsForQt5.breeze-qt5
]; # with pkgs; [
# libsForQt5.breeze-qt5
# noto-fonts
# noto-fonts-emoji
# noto-fonts-cjk-sans
# noto-fonts-cjk-serif
# ];
pathsToLink = [
"/share/fonts"
"/share/icons"
];
};
in {
"/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons";
"/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts";
};
}