Vscode with the python extension - extension greyed out?

I have vscode setup with extensions like this:

let
  extensions = pkgs.vscode-utils.extensionsFromVscodeMarketplace [
      {
        name = "python";
        publisher = "ms-python";
        version = "2021.9.1191016588";
        sha256 = "0sd5va333224r8p0f5g169qmsi04v1s6am01jdgy7b3h0np4a0rs";
      }
      {
        name = "nix-env-selector";
        publisher = "arrterian";
        version = "1.0.7";
        sha256 = "0mralimyzhyp4x9q98x3ck64ifbjqdp8cxcami7clvdvkmf8hxhf";
      }
      {
        name = "vim";
        publisher = "vscodevim";
        version = "1.21.7";
        sha256 = "160h8svp78snwq7bl6acbkmsb2664fiznnjqim9lh2bnyrlh69ww";
      }
      {
        name = "Nix";
        publisher = "bbenoist";
        version = "1.0.1";
        sha256 = "0zd0n9f5z1f0ckzfjr38xw2zzmcxg1gjrava7yahg5cvdcw6l35b";
      }
    ];
  vscode-with-extensions = pkgs.vscode-with-extensions.override {
      vscodeExtensions = extensions;
    };

But when using vscode, the python extension is greyed out (and not working):

Screenshot_20210909_091811

I found some other references to greyed out extensions, but they don’t seem to fit my case:

I just started using vscode-with-extensions. Before, when I installed extensions manualy, I didn’t have this issue.

Not all extensions will work out of the box by just specifying name, version and hash. One reason for that is when extensions need to call out to other programs or expect them in standard FHS locations.
ms-python.python is one of them.
For the most important of these, you will find a proper derivation in nixpkgs. See for example: NixOS Search - Loading...

See also: Visual Studio Code - NixOS Wiki for how the config would look

Thanks @knedlsepp ! I got it working like this:

  extensions = (with pkgs.vscode-extensions; [
      ms-python.python
    ]) ++  pkgs.vscode-utils.extensionsFromVscodeMarketplace [
      {
        name = "nix-env-selector";
        publisher = "arrterian";
        version = "1.0.7";
        sha256 = "0mralimyzhyp4x9q98x3ck64ifbjqdp8cxcami7clvdvkmf8hxhf";
      }
      {
        name = "vim";
        publisher = "vscodevim";
        version = "1.21.7";
        sha256 = "160h8svp78snwq7bl6acbkmsb2664fiznnjqim9lh2bnyrlh69ww";
      }
      {
        name = "Nix";
        publisher = "bbenoist";
        version = "1.0.1";
        sha256 = "0zd0n9f5z1f0ckzfjr38xw2zzmcxg1gjrava7yahg5cvdcw6l35b";
      }
    ];
  vscode-with-extensions = pkgs.vscode-with-extensions.override {
      vscodeExtensions = extensions;
    };

I did want to manage all extensions with name+version+hash, so that I could specifically choose a version myself. When I open vscode now, the python extensions tells me that there’s a new version (which I cannot install through the “Update”-button that appears). Is there an ergonomic (= not a lot of nix code) way to get a newer version of the extension?