From ab4d3d846ac6d0b214958d2d09af613d738ad414 Mon Sep 17 00:00:00 2001 From: Rowan Goemans Date: Mon, 18 Aug 2025 09:45:19 +0200 Subject: [PATCH] vscode-extensions.ms-python.python: per arch derivation --- .../extensions/ms-python.python/default.nix | 36 ++++++++++++++----- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix b/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix index 83e2493bf60d..aa6bbe2d05c7 100644 --- a/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix +++ b/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix @@ -1,4 +1,5 @@ { + stdenv, lib, vscode-utils, icu, @@ -11,12 +12,36 @@ vscode-extension-update-script, }: +let + supported = { + x86_64-linux = { + hash = "sha256-AlqZTioxiL0XPRMpWMWw8fIWoDAmU1ybCaDhlaXv6lc="; + arch = "linux-x64"; + }; + x86_64-darwin = { + hash = "sha256-IWj79vUJJXt88kDiCIHVY95aKsHB84vH3iv6GgLOFQo="; + arch = "darwin-x64"; + }; + aarch64-linux = { + hash = "sha256-kTSHvqS50UZ/yTMqJITyFIUZgHn1dMSwX1R3oxmTnYk="; + arch = "linux-arm64"; + }; + aarch64-darwin = { + hash = "sha256-LWA8LqCQrmd83icDYCmUgytPJbCV3ecNobSpWV2R3MA="; + arch = "darwin-arm64"; + }; + }; + + base = + supported.${stdenv.hostPlatform.system} + or (throw "unsupported platform ${stdenv.hostPlatform.system}"); + +in vscode-utils.buildVscodeMarketplaceExtension rec { - mktplcRef = { + mktplcRef = base // { name = "python"; publisher = "ms-python"; version = "2025.12.0"; - hash = "sha256-IY4xrAFLGe8JCgdx2H3kiQTCh9i5wOykL9hfpztV+44="; }; buildInputs = [ icu ]; @@ -52,12 +77,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec { homepage = "https://github.com/Microsoft/vscode-python"; changelog = "https://github.com/microsoft/vscode-python/releases"; license = lib.licenses.mit; - platforms = [ - "aarch64-linux" - "x86_64-linux" - "aarch64-darwin" - "x86_64-darwin" - ]; + platforms = builtins.attrNames supported; maintainers = [ lib.maintainers.jraygauthier lib.maintainers.jfchevrette