Add and switch to modified build of Iosevka font
Update Makefile for building and copying new fonts Adjust padding of parts of waybar, using variable width glyphs in Iosevka font
This commit is contained in:
parent
07b383cf3e
commit
36825e26a5
8
Makefile
8
Makefile
|
@ -7,10 +7,12 @@ default: build
|
|||
build:
|
||||
nix build --no-link --keep-going .#nixosConfigurations.$(HOST).config.system.build.toplevel
|
||||
|
||||
server:
|
||||
fonts:
|
||||
nix build --no-link --max-jobs 1 .#iosevka-custom-aile .#iosevka-custom-etoile .#iosevka-custom-nerdfont
|
||||
|
||||
server: fonts
|
||||
nixos-rebuild build --flake .#Legion
|
||||
nix copy ./result --to ssh://legion
|
||||
rm ./result
|
||||
nix copy ./result --to ssh://legion && rm ./result
|
||||
|
||||
flathub:
|
||||
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||
|
|
15
flake.nix
15
flake.nix
|
@ -30,9 +30,22 @@
|
|||
...
|
||||
}:
|
||||
let
|
||||
treefmt = treefmt-nix.lib.evalModule nixpkgs.legacyPackages.x86_64-linux ./treefmt.nix;
|
||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||
treefmt = treefmt-nix.lib.evalModule pkgs ./treefmt.nix;
|
||||
in
|
||||
{
|
||||
packages.x86_64-linux =
|
||||
let
|
||||
fonts = pkgs.callPackage ./system/fonts.nix { };
|
||||
in
|
||||
{
|
||||
inherit (fonts)
|
||||
iosevka-custom
|
||||
iosevka-custom-aile
|
||||
iosevka-custom-etoile
|
||||
iosevka-custom-nerdfont
|
||||
;
|
||||
};
|
||||
formatter.x86_64-linux = treefmt.config.build.wrapper;
|
||||
checks.x86_64-linux.formatting = treefmt.config.build.check self;
|
||||
nixosConfigurations = {
|
||||
|
|
|
@ -224,18 +224,30 @@
|
|||
name = "volantes_cursors";
|
||||
size = 32;
|
||||
};
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = pkgs.nerdfonts.override { fonts = [ "DejaVuSansMono" ]; };
|
||||
name = "DejaVuSansM Nerd Font";
|
||||
fonts =
|
||||
let
|
||||
fpkgs = pkgs.callPackage ./fonts.nix { };
|
||||
in
|
||||
{
|
||||
serif = {
|
||||
package = fpkgs.iosevka-custom-etoile;
|
||||
name = "Iosevka Custom Etoile";
|
||||
};
|
||||
sansSerif = {
|
||||
package = fpkgs.iosevka-custom-aile;
|
||||
name = "Iosevka Custom Aile";
|
||||
};
|
||||
monospace = {
|
||||
package = fpkgs.iosevka-custom-nerdfont;
|
||||
name = "IosevkaCustom Nerd Font Propo";
|
||||
};
|
||||
sizes = {
|
||||
applications = 12;
|
||||
desktop = 14;
|
||||
popups = 16;
|
||||
terminal = 12;
|
||||
};
|
||||
};
|
||||
sizes = {
|
||||
applications = 12;
|
||||
desktop = 14;
|
||||
popups = 16;
|
||||
terminal = 12;
|
||||
};
|
||||
};
|
||||
};
|
||||
fonts.packages = with pkgs; [
|
||||
liberation_ttf # Documents
|
||||
|
|
139
system/fonts.nix
Normal file
139
system/fonts.nix
Normal file
|
@ -0,0 +1,139 @@
|
|||
{
|
||||
stdenv,
|
||||
findutils,
|
||||
iosevka,
|
||||
nerd-font-patcher,
|
||||
}:
|
||||
let
|
||||
custom-build-plan = {
|
||||
noCvSs = false;
|
||||
exportGlyphNames = false;
|
||||
widths.Normal = {
|
||||
shape = 500;
|
||||
menu = 5;
|
||||
css = "normal";
|
||||
};
|
||||
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";
|
||||
};
|
||||
};
|
||||
variants.design = {
|
||||
capital-g = "toothless-corner-serifless-hooked";
|
||||
capital-j = "serifed-both-sides";
|
||||
capital-k = "curly-serifless";
|
||||
capital-p = "closed-motion-serifed";
|
||||
capital-q = "crossing";
|
||||
capital-r = "curly-serifless";
|
||||
capital-u = "tailed-serifless";
|
||||
capital-z = "straight-serifless-with-horizontal-crossbar";
|
||||
a = "double-storey-tailed";
|
||||
d = "tailed-serifless";
|
||||
e = "rounded";
|
||||
f = "tailed-crossbar-at-x-height";
|
||||
g = "double-storey-open";
|
||||
h = "tailed-serifless";
|
||||
i = "tailed-serifed";
|
||||
j = "serifed";
|
||||
k = "cursive-serifless";
|
||||
l = "tailed-serifed";
|
||||
m = "tailed-serifless";
|
||||
n = "tailed-serifless";
|
||||
q = "diagonal-tailed-serifless";
|
||||
u = "tailed-serifless";
|
||||
y = "cursive-serifless";
|
||||
z = "straight-serifless-with-horizontal-crossbar";
|
||||
lower-delta = "flat-top";
|
||||
lower-lambda = "tailed-turn";
|
||||
lower-xi = "flat-top";
|
||||
lower-chi = "semi-chancery-straight-serifless";
|
||||
zero = "tall-slashed";
|
||||
one = "no-base";
|
||||
two = "straight-neck-serifless";
|
||||
three = "flat-top-serifless";
|
||||
four = "semi-open-serifless";
|
||||
five = "oblique-arched-serifless";
|
||||
six = "open-contour";
|
||||
seven = "bend-serifless-crossbar";
|
||||
eight = "two-circles";
|
||||
nine = "open-contour";
|
||||
asterisk = "hex-low";
|
||||
underscore = "high";
|
||||
caret = "high";
|
||||
paren = "normal";
|
||||
brace = "straight";
|
||||
number-sign = "slanted";
|
||||
ampersand = "closed";
|
||||
at = "fourfold";
|
||||
percent = "dots";
|
||||
question = "corner";
|
||||
lig-ltgteq = "flat";
|
||||
lig-neq = "more-slanted";
|
||||
lig-equal-chain = "without-notch";
|
||||
lig-hyphen-chain = "without-notch";
|
||||
lig-double-arrow-bar = "without-notch";
|
||||
lig-single-arrow-bar = "without-notch";
|
||||
};
|
||||
};
|
||||
in
|
||||
rec {
|
||||
iosevka-custom = iosevka.override {
|
||||
set = "Custom";
|
||||
privateBuildPlan = custom-build-plan // {
|
||||
family = "Iosevka Custom";
|
||||
spacing = "normal";
|
||||
serifs = "sans";
|
||||
};
|
||||
};
|
||||
iosevka-custom-aile = iosevka.override {
|
||||
set = "CustomAile";
|
||||
privateBuildPlan = custom-build-plan // {
|
||||
family = "Iosevka Custom Aile";
|
||||
spacing = "quasi-proportional";
|
||||
serifs = "sans";
|
||||
};
|
||||
};
|
||||
iosevka-custom-etoile = iosevka.override {
|
||||
set = "CustomEtoile";
|
||||
privateBuildPlan = custom-build-plan // {
|
||||
family = "Iosevka Custom Etoile";
|
||||
spacing = "quasi-proportional";
|
||||
serifs = "slab";
|
||||
};
|
||||
};
|
||||
iosevka-custom-nerdfont = stdenv.mkDerivation {
|
||||
name = "${iosevka-custom.name}-nerd-font-patched";
|
||||
src = iosevka-custom;
|
||||
nativeBuildInputs = [
|
||||
findutils
|
||||
nerd-font-patcher
|
||||
];
|
||||
buildPhase = ''
|
||||
find \( -name \*.ttf -o -name \*.otf \) -execdir nerd-font-patcher --variable-width-glyphs --careful --complete --boxdrawing --no-progressbars {} \;
|
||||
'';
|
||||
installPhase = ''
|
||||
cp -a . $out
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -27,16 +27,16 @@ in
|
|||
imports = [ ./default.nix ];
|
||||
systemd.user = {
|
||||
services.dynamic-wallpaper = {
|
||||
Unit = {
|
||||
Description = "Change wallpaper based on time of day";
|
||||
Wants = [ "swww-daemon.service" ];
|
||||
After = [ "swww-daemon.service" ];
|
||||
};
|
||||
Service = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${dynamicWallpaper}/bin/dynamic-wallpaper";
|
||||
};
|
||||
Unit = {
|
||||
Description = "Change wallpaper based on time of day";
|
||||
Wants = [ "swww-daemon.service" ];
|
||||
After = [ "swww-daemon.service" ];
|
||||
};
|
||||
Service = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${dynamicWallpaper}/bin/dynamic-wallpaper";
|
||||
};
|
||||
};
|
||||
timers.dynamic-wallpaper.Timer = {
|
||||
OnCalendar = "*:0";
|
||||
Unit = "dynamic-wallpaper.service";
|
||||
|
|
|
@ -334,9 +334,6 @@
|
|||
padding: 2px 3px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 2px 5px 2px 1px;
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: ${scheme.base03};
|
||||
}
|
||||
|
@ -359,26 +356,17 @@
|
|||
}
|
||||
#network {
|
||||
color: ${scheme.base0A};
|
||||
padding: 2px 6px 2px 1px;
|
||||
}
|
||||
#bluetooth {
|
||||
color: ${scheme.base0B};
|
||||
}
|
||||
#clock.calendar {
|
||||
color: ${scheme.base0C};
|
||||
padding: 2px 3px 2px 3px;
|
||||
}
|
||||
#clock {
|
||||
color: ${scheme.base0D};
|
||||
padding: 2px 1px 2px 2px;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
padding: 2px 3px 2px 3px;
|
||||
}
|
||||
#battery {
|
||||
padding: 2px 2px 2px 4px;
|
||||
}
|
||||
#battery.warning {
|
||||
color: ${scheme.base09};
|
||||
}
|
||||
|
@ -390,9 +378,6 @@
|
|||
color: ${scheme.base0B};
|
||||
}
|
||||
|
||||
#systemd-failed-units {
|
||||
padding: 2px 4px 2px 1px;
|
||||
}
|
||||
#systemd-failed-units.ok {
|
||||
color: ${scheme.base0B}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue