{ ... }: let sources = import ./nix/sources.nix; pkgs = import sources.nixpkgs { overlays = [ (self: super: rec { go = import ./nix/go.nix { }; buildGoModule = pkgs.callPackage "${sources.nixpkgs}/pkgs/development/go-modules/generic" { inherit go; }; gopls = super.gopls.override { inherit buildGoModule; }; goimports = super.goimports.override { inherit buildGoModule; }; }) ]; }; in pkgs.mkShell { buildInputs = with pkgs; [ go gopls goimports # keep this line if you use bash pkgs.bashInteractive ]; }