Weird error about `gnome.vte`

When trying to update my NixOS configuration, I get the error message:
vte = throw "The ‘gnome.vte’ alias was removed on 2022-01-13. Please use ‘pkgs.vte’ directly."; # added 2019-02-08

I don’t use Gnome directly, only these applications:

gnome.eog
gnome.gedit
gnome3.adwaita-icon-theme

Nowhere in my config do I mention vte. I tried enabling a stack trace, but it doesn’t tell me much. The full trace is here.

Does anyone know what’s wrong here?

1 Like

This was fixed by xfce: use pkgs.vte instead of gnome.vte by bachp · Pull Request #155741 · NixOS/nixpkgs · GitHub. You can track its progress down the pipeline here.

2 Likes

Thanks! Just curious how would I best go about finding that out myself? How did you know about it?

Let’s do our own investigation on commit 2da332aa2d5f0458a51aa8df5a70ae53cc2fe507, the parent of the commit that fixed the issue.

From your trace, you can see which package triggered the evaluation of pkgs.gnome.vte on line 36:

       … while evaluating the attribute 'buildInputs' of the derivation 'xfce4-terminal-0.8.10'

Looking at the expression of xfce4-terminal, we can see that it only asks for vte in the arguments, not gnome, so things are broken further up the chain when it gets callPackage'd:

{ lib, mkXfceDerivation, gtk3, libxfce4ui, vte, xfconf, pcre2, libxslt, docbook_xml_dtd_45, docbook_xsl }:

Going up one level, we finally find our culprit in pkgs/desktops/xfce/default.nix, where Xfce packages are called in a new scope containing several aliases, one of which is the removed alias:

  inherit (pkgs.gnome) vte gtksourceview;
2 Likes