diff --git a/nix-shared/overlays/default.nix b/nix-shared/overlays/default.nix index ada83472..bdc41bd0 100644 --- a/nix-shared/overlays/default.nix +++ b/nix-shared/overlays/default.nix @@ -88,6 +88,18 @@ in oldAttrs.preConfigure; }); + vte = prev.vte.overrideAttrs (oldAttrs: { + # The termite compatibility patch in nixpkgs still uses a helper that VTE + # removed. VTE 0.84 builds as C++23 and already uses std::to_underlying. + postPatch = (oldAttrs.postPatch or "") + '' + if grep -q "vte::to_integral(vte::platform::ClipboardType::PRIMARY)" src/vtegtk.cc; then + substituteInPlace src/vtegtk.cc \ + --replace-fail "vte::to_integral(vte::platform::ClipboardType::PRIMARY)" \ + "std::to_underlying(vte::platform::ClipboardType::PRIMARY)" + fi + ''; + }); + # XXX: codex and claude-code are now provided by flakes in nix.nix # See the overlay at the end of nixpkgs.overlays in nix.nix diff --git a/nixos/environment.nix b/nixos/environment.nix index eb83f2c9..e2c0158c 100644 --- a/nixos/environment.nix +++ b/nixos/environment.nix @@ -84,7 +84,9 @@ in environment = { homeBinInPath = true; localBinInPath = true; - enableAllTerminfo = true; + # Installing every terminfo output pulls in obsolete terminal packages + # like termite, which can fail to build on current nixpkgs. + enableAllTerminfo = false; shellAliases = { df_ssh = "TERM=xterm-256color ssh -o StrictHostKeyChecking=no";