{ lib, config, pkgs, ... }: { system.fsPackages = [ pkgs.bindfs ]; fileSystems = let mkRoSymBind = path: { device = path; fsType = "fuse.bindfs"; options = [ "ro" "resolve-symlinks" "x-gvfs-hide" ]; }; aggregatedIcons = pkgs.buildEnv { name = "system-icons"; paths = with pkgs; [ libsForQt5.breeze-qt5 # for plasma #gnome.gnome-themes-extra ]; pathsToLink = [ "/share/icons" ]; }; aggregatedFonts = pkgs.buildEnv { name = "system-fonts"; paths = config.fonts.packages; pathsToLink = [ "/share/fonts" ]; }; in { "/usr/share/icons" = mkRoSymBind "${aggregatedIcons}/share/icons"; "/usr/local/share/fonts" = mkRoSymBind "${aggregatedFonts}/share/fonts"; }; fonts = { fontDir.enable = true; packages = with pkgs; [ carlito dejavu_fonts ipafont kochi-substitute source-code-pro ttf_bitstream_vera noto-fonts noto-fonts-cjk noto-fonts-emoji liberation_ttf # waybar /* font-awesome powerline-fonts powerline-symbols (nerdfonts.override { fonts = [ "NerdFontsSymbolsOnly" ]; })*/ ]; }; }