The compiler does not need it anymore, has not needed it for many years
iirc. This just goes in and pollutes the environment overriding the
users GOPATH and causing grief.
Go even warns about it itself, without vs with this commit:
```sh
~> go env GOPATH
/home/manny/go
~> nix-shell -p go
~> go env GOPATH
warning: GOPATH set to GOROOT (/nix/store/gvw1mfpdrk7i82884yhxf9lf5j3c12zm-go-1.14.1/share/go) has no effect
/nix/store/gvw1mfpdrk7i82884yhxf9lf5j3c12zm-go-1.14.1/share/go
~> exit
~> nix-shell -I nixpkgs=cloned/NixOS/nixpkgs -p go
~> go env GOPATH
/home/manny/go
~> exit
```
It was crashing with:
TypeError: gobject `__main__+ChromeGNOMEShell' doesn't support property `application_id'
– that is the constructor of parent class Gio.Application does not recognize the kwarg.
This is typically caused by missing pygobject overrides but I think ones for Gio are built-in into pygobject.
Even weirder, adding just `${gobject-introspection}/lib/girepository-1.0` seems to fix the issue so it might be missing the whole typelib.
But then why does not it fail when importing it?
from gi.repository import GLib, Gio
For now, I am adding the Gio typelib which should been done from the start but more debugging should be done since weirdness like this can bring more bugs.
Fixes: https://github.com/NixOS/nixpkgs/issues/87740
The `packagesWith` function expected an attrSet but `packagesWithUpdateScript`
could be passing it a derivation or a list when the attribute path
supplied by user through the `--argstr path` argument pointed to one.
It only worked because derivations are also attrSets and contain their
outputs as attributes, and did not work for lists at all.
Additionally, the improper handling would cause the `src` attribute
to be built in some rare cases (`mkYarnPackage` seems to trigger this).
Rewriting the `packagesWith` function to be inductive with a derivation
as a base case and attrSets and lists as inductive steps is much cleaner
and also fixes the unnecessary build.
It does not make sense to look for derivations within derivations,
not even when `recurseForDerivations` is true. Nix does not do that either:
ebc024df22/src/libexpr/get-drvs.cc (L346-L355)