From 66033bda2dc8a96b11ce1fc86e6f3dcc832f4e7c Mon Sep 17 00:00:00 2001 From: Dmitriy Kholkin Date: Fri, 4 Jul 2025 15:12:44 +0300 Subject: [PATCH] feat: add fallback fonts for cyrillic symbols --- modules/home/applications/firefox.nix | 4 ++++ modules/home/theme/fonts.nix | 17 ++++++++++------- modules/home/theme/theme.nix | 8 ++++++++ 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/modules/home/applications/firefox.nix b/modules/home/applications/firefox.nix index a5c8e4a..f4054d9 100644 --- a/modules/home/applications/firefox.nix +++ b/modules/home/applications/firefox.nix @@ -109,6 +109,8 @@ in "font.name.monospace.x-western" = fonts.mono.family; "font.name.sans-serif.x-western" = fonts.sans.family; "font.name.serif.x-western" = fonts.serif.family; + "font.name.sans-serif.x-cyrillic" = fonts.cyrillic.family; + "font.name.serif.x-cyrillic" = fonts.cyrillic.family; "browser.display.background_color" = colors.color0; "browser.display.foreground_color" = colors.color5; "browser.anchor_color" = colors.color13; @@ -160,6 +162,8 @@ in "font.name.monospace.x-western" = fonts.mono.family; "font.name.sans-serif.x-western" = fonts.sans.family; "font.name.serif.x-western" = fonts.serif.family; + "font.name.sans-serif.x-cyrillic" = fonts.cyrillic.family; + "font.name.serif.x-cyrillic" = fonts.cyrillic.family; "browser.display.background_color" = colors.color0; "browser.display.foreground_color" = colors.color5; "browser.anchor_color" = colors.color13; diff --git a/modules/home/theme/fonts.nix b/modules/home/theme/fonts.nix index 0c93278..db94d3c 100644 --- a/modules/home/theme/fonts.nix +++ b/modules/home/theme/fonts.nix @@ -1,8 +1,4 @@ -{ - config, - lib, - ... -}: +{ config, lib, ... }: let inherit (lib) mkEnableOption mkIf unique; cfg = config.ataraxia.defaults.fonts; @@ -21,6 +17,7 @@ in fonts.mono.package fonts.emoji.package fonts.icons.package + fonts.cyrillic.package ]; fonts = { @@ -29,8 +26,14 @@ in defaultFonts = { emoji = [ fonts.emoji.family ]; monospace = [ fonts.mono.family ]; - sansSerif = [ fonts.sans.family ]; - serif = [ fonts.serif.family ]; + sansSerif = [ + fonts.sans.family + fonts.cyrillic.family + ]; + serif = [ + fonts.serif.family + fonts.cyrillic.family + ]; }; }; }; diff --git a/modules/home/theme/theme.nix b/modules/home/theme/theme.nix index 7d279b4..5b6293f 100644 --- a/modules/home/theme/theme.nix +++ b/modules/home/theme/theme.nix @@ -47,6 +47,10 @@ in type = submodule fontSubmodule; default = { }; }; + cyrillic = mkOption { + type = submodule fontSubmodule; + default = { }; + }; size = mkOption { type = submodule { options = @@ -125,6 +129,10 @@ in family = "Rose-Pine"; package = pkgs.rosepine-gtk-icons; }; + cyrillic = { + family = "PT Sans"; + package = pkgs.paratype-pt-sans; + }; size.big = 14; size.normal = 12; size.small = 11;