diff --git a/nix/configurations/hetzner_benchmark.nix b/nix/configurations/hetzner_benchmark.nix index af9baca1..515bfd3a 100644 --- a/nix/configurations/hetzner_benchmark.nix +++ b/nix/configurations/hetzner_benchmark.nix @@ -40,6 +40,7 @@ in # use lix everywhere and wrap it with nom ../overlays/lix.nix + ../overlays/nix-monitored.nix ]; }; diff --git a/nix/configurations/hetzner_benchmark/nixos/sane-nix.nix b/nix/configurations/hetzner_benchmark/nixos/sane-nix.nix index 3419eae6..d73c45e0 100644 --- a/nix/configurations/hetzner_benchmark/nixos/sane-nix.nix +++ b/nix/configurations/hetzner_benchmark/nixos/sane-nix.nix @@ -11,4 +11,11 @@ MemoryMax = "90%"; OOMScoreAdjust = 500; }; + + # 12 Cores, 64 GB RAM + # split into 4 jobs with 3C/16G + nix.settings = { + cores = 3; + max-jobs = 4; + }; } diff --git a/nix/configurations/hydrogen.nix b/nix/configurations/hydrogen.nix index 7bc9620a..2cafb757 100644 --- a/nix/configurations/hydrogen.nix +++ b/nix/configurations/hydrogen.nix @@ -45,6 +45,7 @@ in # use lix everywhere and wrap it with nom ../overlays/lix.nix + ../overlays/nix-monitored.nix ]; }; diff --git a/nix/configurations/vanadium.nix b/nix/configurations/vanadium.nix index 2f4bec34..d8f2f12c 100644 --- a/nix/configurations/vanadium.nix +++ b/nix/configurations/vanadium.nix @@ -54,15 +54,19 @@ in ../overlays/wired-notify.nix ../overlays/wallpapers.nix ../overlays/nil.nix + ../overlays/fcitx5-table-extra-taiwanese.nix ../overlays/ghostty-dev.nix ../overlays/npins.nix - ../overlays/iosevka-term.nix + ../overlays/iosevka.nix ../packages/overlay.nix ./vanadium/overlay.nix ./vanadium/kernel-overlay.nix + # removed, but I need it for PLFA! + ../overlays/pin-emacs28.nix + # use lix everywhere and wrap it with nom ../overlays/lix.nix ../overlays/nix-monitored.nix diff --git a/nix/configurations/vanadium/home/programs.nix b/nix/configurations/vanadium/home/programs.nix index a4d1d533..2f1b390f 100644 --- a/nix/configurations/vanadium/home/programs.nix +++ b/nix/configurations/vanadium/home/programs.nix @@ -118,6 +118,10 @@ enable = true; defaultEditor = true; }; + emacs = { + enable = true; + package = pkgs.unsafe-emacs28; + }; lazygit.enable = true; fish = { enable = true; diff --git a/nix/configurations/vanadium/nixos/sane-nix.nix b/nix/configurations/vanadium/nixos/sane-nix.nix index 83c080d8..83088437 100644 --- a/nix/configurations/vanadium/nixos/sane-nix.nix +++ b/nix/configurations/vanadium/nixos/sane-nix.nix @@ -10,4 +10,11 @@ MemoryMax = "90%"; OOMScoreAdjust = 500; }; + + # 16 Cores, 32 GB RAM + # split into 4 jobs with 4C/8G + nix.settings = { + cores = 2; + max-jobs = 4; + }; } diff --git a/nix/configurations/vanadium/overlay.nix b/nix/configurations/vanadium/overlay.nix index 4fcc6c76..169bf13b 100644 --- a/nix/configurations/vanadium/overlay.nix +++ b/nix/configurations/vanadium/overlay.nix @@ -16,6 +16,18 @@ infuse { ./patches/helix/W-as-write.patch ]; + # TODO: + # pinned branch of https://github.com/astrand/xclip/tree/xerror + # use this until #43 gets resolved properly + xclip.__output.src = + _: + final.fetchFromGitHub { + owner = "astrand"; + repo = "xclip"; + rev = "2c3b811002b35d3be7f39cc1145dd06bdb32e31c"; + hash = "sha256-hHbq97GTKiRw8LZa/LY4LUOFOd/5H4+S+NR0BJfcu6M="; + }; + fcitx5.__output.cmakeFlags.__append = [ (lib.cmakeFeature "ENABLE_EMOJI" "Off") (lib.cmakeFeature "ENABLE_WAYLAND" "Off") diff --git a/nix/overlays/iosevka-term.nix b/nix/overlays/iosevka.nix similarity index 91% rename from nix/overlays/iosevka-term.nix rename to nix/overlays/iosevka.nix index e8068820..a22bf34b 100644 --- a/nix/overlays/iosevka-term.nix +++ b/nix/overlays/iosevka.nix @@ -1,19 +1,29 @@ -final: prev: -let - iosevka-term = prev.iosevka.override { - # This changes pname which changes what the outputted buildPlan name is. - # Stupid API +final: prev: rec { + nerd-fonts = + let + mkNerdFont = final.callPackage ../lib/mkNerdFont.nix { }; + in + prev.nerd-fonts + // { + iosevka = mkNerdFont { + font = iosevka; + patcherArgs = [ + "--complete" + "--careful" + "--name {/.}-NFM" + "--mono" + ]; + }; + }; + + iosevka = prev.iosevka.override { set = ""; # Guide: https://github.com/be5invis/Iosevka/blob/main/doc/custom-build.md privateBuildPlan = { family = "Iosevka"; serifs = "sans"; - - # Iosevka + Ghostty makes "…" display in a odd way. - # We use "term" width to avoid this. - # https://github.com/ghostty-org/ghostty/discussions/10335 - spacing = "term"; + spacing = "normal"; # Otherwise kitty behaves funny with ligature # noLigation = true; @@ -161,23 +171,4 @@ let ]; }; }; - - mkNerdFont = final.callPackage ../lib/mkNerdFont.nix { }; - iosevka-term-nerd = mkNerdFont { - font = iosevka-term; - patcherArgs = [ - "--complete" - "--careful" - "--name {/.}-NFM" - "--mono" - ]; - }; -in -{ - inherit iosevka-term; - - nerd-fonts = prev.nerd-fonts // { - iosevka = iosevka-term-nerd; - iosevka-term = iosevka-term-nerd; - }; } diff --git a/nix/overlays/pin-emacs28.nix b/nix/overlays/pin-emacs28.nix new file mode 100644 index 00000000..11f1ed50 --- /dev/null +++ b/nix/overlays/pin-emacs28.nix @@ -0,0 +1,6 @@ +let + sources = import ../../npins; +in +_: _: { + unsafe-emacs28 = (import sources.pin-emacs28 { }).emacs; +} diff --git a/nix/overlays/pin-isabelle-2023.nix b/nix/overlays/pin-isabelle-2023.nix new file mode 100644 index 00000000..c5cbab6f --- /dev/null +++ b/nix/overlays/pin-isabelle-2023.nix @@ -0,0 +1,7 @@ +let + sources = import ../../npins; +in +_: _: { + # Isabelle version 2023 + isabelle-2023 = (import sources.pin-isabelle { }).isabelle; +} diff --git a/nix/overlays/pin-wireshark.nix b/nix/overlays/pin-wireshark.nix new file mode 100644 index 00000000..e1708117 --- /dev/null +++ b/nix/overlays/pin-wireshark.nix @@ -0,0 +1,8 @@ +let + sources = import ../../npins; +in +_: _: { + # Wireshark bug + # https://gitlab.com/wireshark/wireshark/-/issues/19574 + inherit (import sources.pin-wireshark { }) wireshark; +}