VS Code: Why are extensions packaged manually and not automatically?

In Nixpkgs, many important VS Code extensions are either missing or outdated, and adding or updating them manually requires a lot of maintenance. Almost all the extensions just require publisher, name, version and sha256, there is really no point in doing all this manually.
Gnome extensions on the other hand are packaged automatically.
I’ve also seen that someone made a script to automatically generate the extension list: https://github.com/AmeerTaweel/nix-vscode-marketplace-generator.
The result: GitHub - AmeerTaweel/nix-vscode-marketplace: VSCode and OpenVSX extensions for Nix.
Could it be adapted on Nixpkgs, or are there reasons for not doing that?

2 Likes

Bloat, the example you’ve linked is already a couple megs large, if you keep updating it’ll grow even larger and will make the nixpkgs repo a lot harder to work with. Also there isn’t really an reason to include it since nothing in nixpkgs is likely to depend on an VS Code extension which makes this an prime example for using flakes.

There are an order of magnitude less gnome extensions and gnome is free software unlike vscode.

Also vscode extensions sometimes bundle binaries. If they are not linked static they won’t work and automated packaging also does not add required tools for exensions.

Also auto updating a giant text file a lot will increase the nixpkgs repository by a lot for no much benefit. An extra repository is a perfect fit for such a project.

1 Like