nixpkgs/pkgs/applications/editors/vscode/extensions/ms-toolsai.jupyter/default.nix
2024-05-01 06:00:27 -04:00

48 lines
1.2 KiB
Nix

{
lib,
vscode-utils,
jq,
moreutils,
}:
vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "jupyter";
publisher = "ms-toolsai";
version = "2024.2.0";
hash = "sha256-QavZ8NNeu0FHLvorhHybzfmdQqKnyXD6MYA8AzabPQw=";
};
nativeBuildInputs = [
jq
moreutils
];
postPatch = ''
# Patch 'packages.json' so that the expected '__metadata' field exists.
# This works around observed extension load failure on vscode's attempt
# to rewrite 'packages.json' with this new information.
print_jq_query() {
cat <<"EOF"
.__metadata = {
"id": "6c2f1801-1e7f-45b2-9b5c-7782f1e076e8",
"publisherId": "ac8eb7c9-3e59-4b39-8040-f0484d8170ce",
"publisherDisplayName": "Microsoft",
"installedTimestamp": 0
}
EOF
}
jq "$(print_jq_query)" ./package.json | sponge ./package.json
# Add a link from temp to /tmp so that the extension gets a writable
# directory to write to.
ln -s /tmp temp
'';
meta = {
description = "Jupyter extension for vscode";
homepage = "https://github.com/microsoft/vscode-jupyter";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.jraygauthier ];
};
}