From 11c28a9cef581dc46e9550914582393ee67a8b2e Mon Sep 17 00:00:00 2001 From: Madeline Hashcube Date: Thu, 25 Jun 2026 00:34:45 -0500 Subject: [PATCH] waow i figured out overlays and i'm switching fonts yipee --- flake.nix | 8 +++--- modules/fonts.nix | 1 + overlays/default.nix | 7 ++++++ overlays/iosevka/default.nix | 49 ++++++++++++++++++++++++++++++++++++ 4 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 overlays/default.nix create mode 100644 overlays/iosevka/default.nix diff --git a/flake.nix b/flake.nix index bb0c1cc..38165cb 100644 --- a/flake.nix +++ b/flake.nix @@ -67,11 +67,9 @@ ./modules/. catppuccin.nixosModules.catppuccin home-manager.nixosModules.home-manager - ]; - overlays = [ + (import ./overlays) ]; nixpkgsOpts = { - inherit overlays; config.allowUnfree = true; system = "x86_64-linux"; }; @@ -80,7 +78,9 @@ prism = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; - nixpkgs = { inherit nixpkgsOpts; }; + nixpkgs = { + inherit nixpkgsOpts; + }; }; modules = [ agenix.nixosModules.default diff --git a/modules/fonts.nix b/modules/fonts.nix index da8864c..43d103b 100644 --- a/modules/fonts.nix +++ b/modules/fonts.nix @@ -8,5 +8,6 @@ nerd-fonts.jetbrains-mono noto-fonts-cjk-sans komika-fonts + iosevka-hashcube ]; } diff --git a/overlays/default.nix b/overlays/default.nix new file mode 100644 index 0000000..1ee0341 --- /dev/null +++ b/overlays/default.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + nixpkgs.overlays = [ + (import ./iosevka) + ]; +} diff --git a/overlays/iosevka/default.nix b/overlays/iosevka/default.nix new file mode 100644 index 0000000..b458180 --- /dev/null +++ b/overlays/iosevka/default.nix @@ -0,0 +1,49 @@ +(self: super: { + iosevka-hashcube = ((super.iosevka.overrideAttrs (_:{ + nativeBuildInputs = [ super.nerd-font-patcher ] ++ super.iosevka.nativeBuildInputs; + postInstall = '' + mkdir -p $out/share/fonts/truetype/{iosevka,iosevka-nerd} + mv $out/share/fonts/truetype/*.ttf $out/share/fonts/truetype/iosevka/ + for f in $out/share/fonts/truetype/iosevka/*.ttf; do + nerd-font-patcher --complete -s --outputdir $out/share/fonts/truetype/iosevka-nerd/ "$f" + done + ''; + })).override { + privateBuildPlan = { + family = "Iosevka Hashcube"; + spacing = "term"; + serifs = "sans"; + noCvSs = true; + exportGlyphNames = false; + + variants.inherits = "ss14"; + ligations.inherits = "dlig"; + weights = { + Regular = { + shape = 400; + menu = 400; + css = 400; + }; + Bold = { + shape = 700; + menu = 700; + css = 700; + }; + }; + slopes = { + Upright = { + angle = 0; + shape = "upright"; + menu = "upright"; + css = "normal" ; + }; + Italic = { + angle = 9.4; + shape = "italic"; + menu = "italic"; + css = "italic"; + }; + }; + }; + }); +}) -- 2.51.2