stylix: switch to caelestia fonts (Rubik + CaskaydiaCove NF)
This commit is contained in:
parent
ec7ae50cf0
commit
4eeb496efe
3 changed files with 16 additions and 13 deletions
|
|
@ -34,7 +34,7 @@ in
|
||||||
programs.ghostty = lib.mkIf isDesktop {
|
programs.ghostty = lib.mkIf isDesktop {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
font-family = "FiraMono Nerd Font";
|
font-family = "CaskaydiaCove NF";
|
||||||
font-size = 11;
|
font-size = 11;
|
||||||
font-thicken = true;
|
font-thicken = true;
|
||||||
window-padding-x = 10;
|
window-padding-x = 10;
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,11 @@ in
|
||||||
qt6.qt5compat # Qt5Compat.GraphicalEffects in Bar.qml
|
qt6.qt5compat # Qt5Compat.GraphicalEffects in Bar.qml
|
||||||
];
|
];
|
||||||
|
|
||||||
# Shell fonts, matching caelestia: Rubik for all UI text, Material Symbols
|
# Icon font for the shell (ligature-based: text "volume_up" renders the
|
||||||
# Rounded for icons (ligature-based: text "volume_up" renders the icon).
|
# icon) — same font caelestia uses. UI text font comes from stylix.
|
||||||
# Scoped to the bar only — terminals/GTK still follow stylix.
|
fonts.packages = [ pkgs.material-symbols ];
|
||||||
fonts.packages = [ pkgs.material-symbols pkgs.rubik ];
|
|
||||||
|
|
||||||
home-manager.users.fred = { config, lib, pkgs, ... }:
|
home-manager.users.fred = { config, lib, pkgs, osConfig, ... }:
|
||||||
let
|
let
|
||||||
c = config.lib.stylix.colors;
|
c = config.lib.stylix.colors;
|
||||||
in {
|
in {
|
||||||
|
|
@ -51,6 +50,8 @@ in
|
||||||
[ -n "$pw" ] && ${pkgs.networkmanager}/bin/nmcli device wifi connect "$ssid" password "$pw"
|
[ -n "$pw" ] && ${pkgs.networkmanager}/bin/nmcli device wifi connect "$ssid" password "$pw"
|
||||||
'';
|
'';
|
||||||
nmcli = "${pkgs.networkmanager}/bin/nmcli";
|
nmcli = "${pkgs.networkmanager}/bin/nmcli";
|
||||||
|
# Follow stylix's sans choice so a font swap propagates to the bar
|
||||||
|
sansFont = osConfig.stylix.fonts.sansSerif.name;
|
||||||
# Shell chrome fragment shader: the bar, screen frame, dropdown panel
|
# Shell chrome fragment shader: the bar, screen frame, dropdown panel
|
||||||
# and toast are one signed-distance field merged with a circular
|
# and toast are one signed-distance field merged with a circular
|
||||||
# smooth-min (caelestia-style liquid junctions); the 2px border is the
|
# smooth-min (caelestia-style liquid junctions); the 2px border is the
|
||||||
|
|
@ -217,7 +218,7 @@ in
|
||||||
// colour animation stays in-hue instead of dipping through
|
// colour animation stays in-hue instead of dipping through
|
||||||
// transparent *black* (which reads as an extra flash colour).
|
// transparent *black* (which reads as an extra flash colour).
|
||||||
readonly property color base02t: "#00${c.base02}"
|
readonly property color base02t: "#00${c.base02}"
|
||||||
readonly property string fontFamily: "Rubik"
|
readonly property string fontFamily: "${sansFont}"
|
||||||
// Ligature-based icon font: text "volume_up" renders the icon
|
// Ligature-based icon font: text "volume_up" renders the icon
|
||||||
readonly property string iconFont: "Material Symbols Rounded"
|
readonly property string iconFont: "Material Symbols Rounded"
|
||||||
// Matches hyprland general.border_size (col.inactive_border = base03)
|
// Matches hyprland general.border_size (col.inactive_border = base03)
|
||||||
|
|
|
||||||
|
|
@ -23,18 +23,20 @@
|
||||||
size = 24;
|
size = 24;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# caelestia's font set: Rubik for UI text, CaskaydiaCove NF for mono
|
||||||
|
# (still a nerd font, so terminal glyphs survive the swap).
|
||||||
fonts = {
|
fonts = {
|
||||||
monospace = {
|
monospace = {
|
||||||
package = pkgs.nerd-fonts.fira-mono;
|
package = pkgs.nerd-fonts.caskaydia-cove;
|
||||||
name = "FiraMono Nerd Font";
|
name = "CaskaydiaCove NF";
|
||||||
};
|
};
|
||||||
sansSerif = {
|
sansSerif = {
|
||||||
package = pkgs.inter;
|
package = pkgs.rubik;
|
||||||
name = "Inter";
|
name = "Rubik";
|
||||||
};
|
};
|
||||||
serif = {
|
serif = {
|
||||||
package = pkgs.inter;
|
package = pkgs.rubik;
|
||||||
name = "Inter";
|
name = "Rubik";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue