about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBaitinq <manuelpalenzuelamerino@gmail.com>2024-12-28 16:21:48 +0100
committerBaitinq <manuelpalenzuelamerino@gmail.com>2024-12-28 19:30:25 +0100
commitce5235a66ea52e0ea7972a0b01e19400851ed200 (patch)
treed27cf37582fe0aeb1a4e842317f4c2b630cc5468
parentFix update changes (diff)
downloadnixos-config-ce5235a66ea52e0ea7972a0b01e19400851ed200.tar.gz
nixos-config-ce5235a66ea52e0ea7972a0b01e19400851ed200.tar.bz2
nixos-config-ce5235a66ea52e0ea7972a0b01e19400851ed200.zip
Font: Add new font
-rw-r--r--dotfiles/.Xresources10
-rw-r--r--dotfiles/alacritty.toml15
-rw-r--r--dotfiles/xmobar.hs2
-rw-r--r--hosts/home.nix3
-rw-r--r--modules/fonts/berkeley-mono/default.nix43
-rw-r--r--modules/fonts/default.nix32
-rw-r--r--secrets/berkeley-mono.zipbin0 -> 988792 bytes
7 files changed, 91 insertions, 14 deletions
diff --git a/dotfiles/.Xresources b/dotfiles/.Xresources
index df0abd0..7d8f91c 100644
--- a/dotfiles/.Xresources
+++ b/dotfiles/.Xresources
@@ -12,11 +12,11 @@ URxvt.termName: xterm-256color
 URxvt.urgentOnBell: True
 URxvt.cursorBlink: False
 
-#define font1         Inconsolata LGC Nerd Font
-#define font2         DejaVu Sans Mono Nerd Font
-#define font3         Noto Sans Mono CJK JP
-#define font4         Noto Color Emoji
-#define font5         Noto Sans Hebrew
+#define font1         Berkeley Mono
+#define font2         Inconsolata LGC Nerd Font
+#define font3         DejaVu Sans Mono Nerd Font
+#define font4         Noto Sans Mono CJK JP
+#define font5         Noto Color Emoji
 
 URxvt*letterSpace: 0
 URxvt*font:           xft:font1:pixelsize=16, xft:font2:pixelsize=16,xft:font3:pixelsize=16, xft:font4:pixelsize=16, xft:font5:pixelsize=16
diff --git a/dotfiles/alacritty.toml b/dotfiles/alacritty.toml
index f509f4c..aff5951 100644
--- a/dotfiles/alacritty.toml
+++ b/dotfiles/alacritty.toml
@@ -42,8 +42,21 @@ TERM = "xterm-256color"
 [font]
 size = 12.0
 
+[font.bold]
+family = "Berkeley Mono"
+style = "Bold"
+
+[font.bold_italic]
+family = "Berkeley Mono"
+style = "Bold Italic"
+
+[font.italic]
+family = "Berkeley Mono"
+style = "Italic"
+
 [font.normal]
-family = "Inconsolata LGC Nerd Font"
+family = "Berkeley Mono"
+style = "Regular"
 
 [[keyboard.bindings]]
 action = "Paste"
diff --git a/dotfiles/xmobar.hs b/dotfiles/xmobar.hs
index fe9e66b..9ffe08e 100644
--- a/dotfiles/xmobar.hs
+++ b/dotfiles/xmobar.hs
@@ -1,7 +1,7 @@
 Config { 
 
    -- appearance
-     font =         "xft:Noto Sans Display Nerd Font:size=10,Inconsolata LGC Nerd Font:size=10,DejaVu Sans Mono Nerd Font:size=10,Noto Sans Mono CJK JP:size=10,Noto Color Emoji:size=10,Noto Sans Hebrew:size=10"
+     font =         "xft:Berkeley Mono:size=10,Inconsolata LGC Nerd Font:size=10,DejaVu Sans Mono Nerd Font:size=10,Noto Sans Mono CJK JP:size=10,Noto Color Emoji:size=10,Noto Sans Hebrew:size=10"
    , bgColor =      "#222222"
    , fgColor =      "#bbbbbb"
    , position =     Top
diff --git a/hosts/home.nix b/hosts/home.nix
index 10c864a..4cd3fdb 100644
--- a/hosts/home.nix
+++ b/hosts/home.nix
@@ -18,6 +18,7 @@
       #dwm
       #st
       alacritty
+      # ghostty
       dmenu
       unclutter
       clipmenu
@@ -406,6 +407,8 @@
     "/home/${user}/.cargo/bin"
   ];
 
+  fonts.fontconfig.enable = true;
+
   # For disabling the automatic creation of $HOME/Desktop
   xdg.userDirs.desktop = "$HOME/";
 
diff --git a/modules/fonts/berkeley-mono/default.nix b/modules/fonts/berkeley-mono/default.nix
new file mode 100644
index 0000000..3375217
--- /dev/null
+++ b/modules/fonts/berkeley-mono/default.nix
@@ -0,0 +1,43 @@
+{
+  lib,
+  requireFile,
+  unzip,
+  stdenvNoCC,
+}:
+stdenvNoCC.mkDerivation (finalAttrs: {
+  pname = "berkeley-mono";
+  version = "1";
+
+  src = ../../../secrets/berkeley-mono.zip;
+
+  outputs = [
+    "out"
+    "web"
+    "variable"
+    "variableweb"
+  ];
+
+  nativeBuildInputs = [
+    unzip
+  ];
+
+  unpackPhase = ''
+    unzip $src
+  '';
+
+  installPhase = ''
+    install -m444 -Dt $out/share/fonts/truetype/berkeley-mono berkeley-mono/TTF/*.ttf
+    install -m444 -Dt $out/share/fonts/opentype/berkeley-mono berkeley-mono/OTF/*.otf
+    install -m444 -Dt $web/share/fonts/webfonts/berkeley-mono berkeley-mono/WEB/*.woff2
+    install -m444 -Dt $variable/share/fonts/truetype/berkeley-mono berkeley-mono-variable/TTF/*.ttf
+    install -m444 -Dt $variableweb/share/fonts/webfonts/berkeley-mono berkeley-mono-variable/WEB/*.woff2
+  '';
+
+  meta = {
+    description = "Berkeley Mono Typeface";
+    longDescription = "…";
+    homepage = "https://berkeleygraphics.com/typefaces/berkeley-mono";
+    license = lib.licenses.unfree;
+    platforms = lib.platforms.all;
+  };
+})
diff --git a/modules/fonts/default.nix b/modules/fonts/default.nix
index a91ee0f..9c4cf45 100644
--- a/modules/fonts/default.nix
+++ b/modules/fonts/default.nix
@@ -1,9 +1,27 @@
 { config, pkgs, ... }: {
-  fonts.packages = with pkgs; [
-    noto-fonts
-    noto-fonts-cjk-sans
-    noto-fonts-emoji
-    nerd-fonts.inconsolata-lgc
-    nerd-fonts.noto
-  ];
+  fonts = {
+    packages = with pkgs; [
+      noto-fonts
+      noto-fonts-cjk-sans
+      noto-fonts-emoji
+      nerd-fonts.inconsolata-lgc
+      nerd-fonts.noto
+      (pkgs.callPackage ./berkeley-mono {})
+    ];
+    fontconfig = {
+      defaultFonts = {
+        monospace = [ "Berkeley Mono" "Inconsolata LGC" ];
+      };
+    #   localConf = ''
+    #   <?xml version="1.0"?>
+    #   <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+    #   <fontconfig>
+    #      <match target="pattern">
+    #         <test qual="any" name="family" compare="eq"><string>Berkeley Mono</string></test>
+    #         <edit name="family" mode="assign" binding="same"><string>Inconsolata LGC</string></edit>
+    #      </match>
+    #   </fontconfig>
+    # '';
+    };
+  };
 }
diff --git a/secrets/berkeley-mono.zip b/secrets/berkeley-mono.zip
new file mode 100644
index 0000000..b07dd3b
--- /dev/null
+++ b/secrets/berkeley-mono.zip
Binary files differ