Loading lib/systems/default.nix +3 −15 Original line number Diff line number Diff line Loading @@ -352,21 +352,9 @@ let else null; # Remove before 25.05 androidSdkVersion = if (args ? sdkVer && !args ? androidSdkVersion) then throw "For android `sdkVer` has been renamed to `androidSdkVersion`" else if (args ? androidSdkVersion) then args.androidSdkVersion else null; androidNdkVersion = if (args ? ndkVer && !args ? androidNdkVersion) then throw "For android `ndkVer` has been renamed to `androidNdkVersion`" else if (args ? androidSdkVersion) then args.androidNdkVersion else null; # Handle Android SDK and NDK versions. androidSdkVersion = args.androidSdkVersion or null; androidNdkVersion = args.androidNdkVersion or null; } // ( let Loading pkgs/applications/editors/vscode/extensions/default.nix +4 −4 Original line number Diff line number Diff line Loading @@ -4346,8 +4346,8 @@ let mktplcRef = { name = "metals"; publisher = "scalameta"; version = "1.49.0"; hash = "sha256-/vzQojojvEz0KLebFCE3q4ptqPm40s4UgwxUAwMx8zs="; version = "1.50.0"; hash = "sha256-vMO1u8w4uQc0mvgB3az4G+QnwRwsz5d1+LpDGEShyDw="; }; meta = { license = lib.licenses.asl20; Loading Loading @@ -5721,8 +5721,8 @@ let mktplcRef = { name = "vscode-zig"; publisher = "ziglang"; version = "0.6.8"; hash = "sha256-u4Vd2YP47ccpz4ZMOGDN1eFS8qiC7nGIbo6YtvxNHFM="; version = "0.6.9"; hash = "sha256-R18NnnsYVLmCNdGU0plIYn2MKrlSedfJoXH/amxKKaY="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/ziglang.vscode-zig/changelog"; Loading pkgs/applications/editors/vscode/extensions/ms-dotnettools.csdevkit/default.nix +54 −9 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ libz, glibc, libxml2, libkrb5, patchelf, }: let extInfo = ( Loading Loading @@ -41,16 +43,18 @@ vscode-utils.buildVscodeMarketplaceExtension { }; sourceRoot = "extension"; # This has more than one folder. nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook patchelf ]; buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib stdenv.cc.cc) # libstdc++.so.6 (lib.getLib glibc) # libgcc_s.so.1 (lib.getLib libxml2) # libxml2.so.2 ]; runtimeDependencies = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib openssl) # libopenssl.so.3 (lib.getLib icu) # libicui18n.so libicuuc.so (lib.getLib libkrb5) # libgssapi_krb5.so (lib.getLib libxml2) # libxml2.so.2 (lib.getLib libz) # libz.so.1 (lib.getLib openssl) # libopenssl.so.3 (lib.getLib stdenv.cc.cc) # libstdc++.so.6 ]; postPatch = '' Loading @@ -64,22 +68,63 @@ vscode-utils.buildVscodeMarketplaceExtension { preFixup = '' ( set -euo pipefail shopt -s globstar shopt -s dotglob # Fix all binaries. for file in "$out"/**/*; do if [[ ! -f "$file" || "$file" == *.so || "$file" == *.dylib ]] || if [[ ! -f "$file" || "$file" == *.so || "$file" == *.a || "$file" == *.dylib ]] || (! isELF "$file" && ! isMachO "$file"); then continue fi echo Making "$file" executable... chmod +x "$file" ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add .NET deps if it is an apphost. if grep 'You must install .NET to run this application.' "$file" > /dev/null; then echo "Adding .NET needed libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$file" fi ''} done ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add the ICU libraries as needed to the globalization DLLs. for file in "$out"/**/{libcoreclr.so,*System.Globalization.Native.so}; do echo "Adding ICU libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ "$file" done # Add the Kerberos libraries as needed to the native security DLL. for file in "$out"/**/*System.Net.Security.Native.so; do echo "Adding Kerberos libraries to: $file" patchelf \ --add-needed libgssapi_krb5.so \ "$file" done # Add the OpenSSL libraries as needed to the OpenSSL native security DLL. for file in "$out"/**/*System.Security.Cryptography.Native.OpenSsl.so; do echo "Adding OpenSSL libraries to: $file" patchelf \ --add-needed libssl.so \ "$file" done ''} ) ''; passthru.updateScript = ./update.sh; meta = { changelog = "https://marketplace.visualstudio.com/items/ms-dotnettools.csdevkit/changelog"; description = "Official Visual Studio Code extension for C# from Microsoft"; Loading pkgs/applications/editors/vscode/extensions/ms-dotnettools.csdevkit/update.shdeleted 100755 → 0 +0 −46 Original line number Diff line number Diff line #!/usr/bin/env nix-shell #!nix-shell -I nixpkgs=./. -i bash -p curl jq nix common-updater-scripts # shellcheck shell=bash set -euo pipefail export LC_ALL=C PUBLISHER=ms-dotnettools EXTENSION=csdevkit response=$(curl -s 'https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery' \ -H 'accept: application/json;api-version=3.0-preview.1' \ -H 'content-type: application/json' \ --data-raw '{"filters":[{"criteria":[{"filterType":7,"value":"'"$PUBLISHER.$EXTENSION"'"}]}],"flags":16}') # Find the latest version compatible with stable vscode version latest_version=$(jq --raw-output ' .results[0].extensions[0].versions | map(select(has("properties"))) | map(select(.properties | map(select(.key == "Microsoft.VisualStudio.Code.Engine")) | .[0].value | test("\\^[0-9.]+$"))) | map(select(.properties | map(select(.key == "Microsoft.VisualStudio.Code.PreRelease")) | .[0].value != "true")) | .[0].version' <<<"$response") getDownloadUrl() { nix-instantiate \ --eval \ --strict \ --json \ 'pkgs/applications/editors/vscode/extensions/mktplcExtRefToFetchArgs.nix' \ --attr url \ --argstr publisher $PUBLISHER \ --argstr name $EXTENSION \ --argstr version "$latest_version" \ --argstr arch "$1" | jq . --raw-output } update_hash() { local hash hash=$(nix hash convert --hash-algo sha256 "$(nix-prefetch-url --type sha256 "$(getDownloadUrl "$2")")") update-source-version vscode-extensions.$PUBLISHER.$EXTENSION "$latest_version" "$hash" --system="$1" --ignore-same-version } update_hash x86_64-linux linux-x64 update_hash aarch64-linux linux-arm64 update_hash x86_64-darwin darwin-x64 update_hash aarch64-darwin darwin-arm64 pkgs/applications/editors/vscode/extensions/ms-dotnettools.csharp/default.nix +69 −8 Original line number Diff line number Diff line Loading @@ -7,7 +7,10 @@ openssl, libz, glibc, libkrb5, coreutils, jq, patchelf, }: let extInfo = ( Loading Loading @@ -40,16 +43,18 @@ vscode-utils.buildVscodeMarketplaceExtension { inherit (extInfo) hash arch; }; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook jq patchelf ]; buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib stdenv.cc.cc) # libstdc++.so.6 (lib.getLib glibc) # libgcc_s.so.1 (lib.getLib libz) # libz.so.1 ]; runtimeDependencies = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib openssl) # libopenssl.so.3 (lib.getLib icu) # libicui18n.so libicuuc.so (lib.getLib libkrb5) # libgssapi_krb5.so (lib.getLib libz) # libz.so.1 (lib.getLib openssl) # libopenssl.so.3 (lib.getLib stdenv.cc.cc) # libstdc++.so.6 ]; postPatch = '' Loading @@ -59,17 +64,73 @@ vscode-utils.buildVscodeMarketplaceExtension { preFixup = '' ( set -euo pipefail shopt -s globstar shopt -s dotglob # Fix all binaries. for file in "$out"/**/*; do if [[ ! -f "$file" || "$file" == *.so || "$file" == *.dylib ]] || if [[ ! -f "$file" || "$file" == *.so || "$file" == *.a || "$file" == *.dylib ]] || (! isELF "$file" && ! isMachO "$file"); then continue fi echo Making "$file" executable... chmod +x "$file" ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add .NET deps if it is an apphost. if grep 'You must install .NET to run this application.' "$file" > /dev/null; then echo "Adding .NET needed libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$file" fi ''} done ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add the ICU libraries as needed to the globalization DLLs. for file in "$out"/**/{libcoreclr.so,*System.Globalization.Native.so}; do echo "Adding ICU libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ "$file" done # Add the Kerberos libraries as needed to the native security DLL. for file in "$out"/**/*System.Net.Security.Native.so; do echo "Adding Kerberos libraries to: $file" patchelf \ --add-needed libgssapi_krb5.so \ "$file" done # Add the OpenSSL libraries as needed to the OpenSSL native security DLL. for file in "$out"/**/*System.Security.Cryptography.Native.OpenSsl.so; do echo "Adding OpenSSL libraries to: $file" patchelf \ --add-needed libssl.so \ "$file" done # Add the needed binaries to the apphost binaries. for file in $(jq -r '.runtimeDependencies | map(select(.binaries != null) | .installPath + "/" + .binaries[]) | sort | unique | map(sub("/\\./"; "/")) | .[]' < "$out"/share/vscode/extensions/ms-dotnettools.csharp/package.json); do [ -f "$out"/share/vscode/extensions/ms-dotnettools.csharp/"$file" ] || continue echo "Adding .NET needed libraries to: $out/share/vscode/extensions/ms-dotnettools.csharp/$file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$out"/share/vscode/extensions/ms-dotnettools.csharp/"$file" done ''} ) ''; Loading @@ -78,7 +139,7 @@ vscode-utils.buildVscodeMarketplaceExtension { meta = { description = "Official C# support for Visual Studio Code"; homepage = "https://github.com/dotnet/vscode-csharp"; license = lib.licenses.mit; license = lib.licenses.unfree; maintainers = with lib.maintainers; [ ggg ]; platforms = [ "x86_64-linux" Loading Loading
lib/systems/default.nix +3 −15 Original line number Diff line number Diff line Loading @@ -352,21 +352,9 @@ let else null; # Remove before 25.05 androidSdkVersion = if (args ? sdkVer && !args ? androidSdkVersion) then throw "For android `sdkVer` has been renamed to `androidSdkVersion`" else if (args ? androidSdkVersion) then args.androidSdkVersion else null; androidNdkVersion = if (args ? ndkVer && !args ? androidNdkVersion) then throw "For android `ndkVer` has been renamed to `androidNdkVersion`" else if (args ? androidSdkVersion) then args.androidNdkVersion else null; # Handle Android SDK and NDK versions. androidSdkVersion = args.androidSdkVersion or null; androidNdkVersion = args.androidNdkVersion or null; } // ( let Loading
pkgs/applications/editors/vscode/extensions/default.nix +4 −4 Original line number Diff line number Diff line Loading @@ -4346,8 +4346,8 @@ let mktplcRef = { name = "metals"; publisher = "scalameta"; version = "1.49.0"; hash = "sha256-/vzQojojvEz0KLebFCE3q4ptqPm40s4UgwxUAwMx8zs="; version = "1.50.0"; hash = "sha256-vMO1u8w4uQc0mvgB3az4G+QnwRwsz5d1+LpDGEShyDw="; }; meta = { license = lib.licenses.asl20; Loading Loading @@ -5721,8 +5721,8 @@ let mktplcRef = { name = "vscode-zig"; publisher = "ziglang"; version = "0.6.8"; hash = "sha256-u4Vd2YP47ccpz4ZMOGDN1eFS8qiC7nGIbo6YtvxNHFM="; version = "0.6.9"; hash = "sha256-R18NnnsYVLmCNdGU0plIYn2MKrlSedfJoXH/amxKKaY="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/ziglang.vscode-zig/changelog"; Loading
pkgs/applications/editors/vscode/extensions/ms-dotnettools.csdevkit/default.nix +54 −9 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ libz, glibc, libxml2, libkrb5, patchelf, }: let extInfo = ( Loading Loading @@ -41,16 +43,18 @@ vscode-utils.buildVscodeMarketplaceExtension { }; sourceRoot = "extension"; # This has more than one folder. nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook patchelf ]; buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib stdenv.cc.cc) # libstdc++.so.6 (lib.getLib glibc) # libgcc_s.so.1 (lib.getLib libxml2) # libxml2.so.2 ]; runtimeDependencies = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib openssl) # libopenssl.so.3 (lib.getLib icu) # libicui18n.so libicuuc.so (lib.getLib libkrb5) # libgssapi_krb5.so (lib.getLib libxml2) # libxml2.so.2 (lib.getLib libz) # libz.so.1 (lib.getLib openssl) # libopenssl.so.3 (lib.getLib stdenv.cc.cc) # libstdc++.so.6 ]; postPatch = '' Loading @@ -64,22 +68,63 @@ vscode-utils.buildVscodeMarketplaceExtension { preFixup = '' ( set -euo pipefail shopt -s globstar shopt -s dotglob # Fix all binaries. for file in "$out"/**/*; do if [[ ! -f "$file" || "$file" == *.so || "$file" == *.dylib ]] || if [[ ! -f "$file" || "$file" == *.so || "$file" == *.a || "$file" == *.dylib ]] || (! isELF "$file" && ! isMachO "$file"); then continue fi echo Making "$file" executable... chmod +x "$file" ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add .NET deps if it is an apphost. if grep 'You must install .NET to run this application.' "$file" > /dev/null; then echo "Adding .NET needed libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$file" fi ''} done ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add the ICU libraries as needed to the globalization DLLs. for file in "$out"/**/{libcoreclr.so,*System.Globalization.Native.so}; do echo "Adding ICU libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ "$file" done # Add the Kerberos libraries as needed to the native security DLL. for file in "$out"/**/*System.Net.Security.Native.so; do echo "Adding Kerberos libraries to: $file" patchelf \ --add-needed libgssapi_krb5.so \ "$file" done # Add the OpenSSL libraries as needed to the OpenSSL native security DLL. for file in "$out"/**/*System.Security.Cryptography.Native.OpenSsl.so; do echo "Adding OpenSSL libraries to: $file" patchelf \ --add-needed libssl.so \ "$file" done ''} ) ''; passthru.updateScript = ./update.sh; meta = { changelog = "https://marketplace.visualstudio.com/items/ms-dotnettools.csdevkit/changelog"; description = "Official Visual Studio Code extension for C# from Microsoft"; Loading
pkgs/applications/editors/vscode/extensions/ms-dotnettools.csdevkit/update.shdeleted 100755 → 0 +0 −46 Original line number Diff line number Diff line #!/usr/bin/env nix-shell #!nix-shell -I nixpkgs=./. -i bash -p curl jq nix common-updater-scripts # shellcheck shell=bash set -euo pipefail export LC_ALL=C PUBLISHER=ms-dotnettools EXTENSION=csdevkit response=$(curl -s 'https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery' \ -H 'accept: application/json;api-version=3.0-preview.1' \ -H 'content-type: application/json' \ --data-raw '{"filters":[{"criteria":[{"filterType":7,"value":"'"$PUBLISHER.$EXTENSION"'"}]}],"flags":16}') # Find the latest version compatible with stable vscode version latest_version=$(jq --raw-output ' .results[0].extensions[0].versions | map(select(has("properties"))) | map(select(.properties | map(select(.key == "Microsoft.VisualStudio.Code.Engine")) | .[0].value | test("\\^[0-9.]+$"))) | map(select(.properties | map(select(.key == "Microsoft.VisualStudio.Code.PreRelease")) | .[0].value != "true")) | .[0].version' <<<"$response") getDownloadUrl() { nix-instantiate \ --eval \ --strict \ --json \ 'pkgs/applications/editors/vscode/extensions/mktplcExtRefToFetchArgs.nix' \ --attr url \ --argstr publisher $PUBLISHER \ --argstr name $EXTENSION \ --argstr version "$latest_version" \ --argstr arch "$1" | jq . --raw-output } update_hash() { local hash hash=$(nix hash convert --hash-algo sha256 "$(nix-prefetch-url --type sha256 "$(getDownloadUrl "$2")")") update-source-version vscode-extensions.$PUBLISHER.$EXTENSION "$latest_version" "$hash" --system="$1" --ignore-same-version } update_hash x86_64-linux linux-x64 update_hash aarch64-linux linux-arm64 update_hash x86_64-darwin darwin-x64 update_hash aarch64-darwin darwin-arm64
pkgs/applications/editors/vscode/extensions/ms-dotnettools.csharp/default.nix +69 −8 Original line number Diff line number Diff line Loading @@ -7,7 +7,10 @@ openssl, libz, glibc, libkrb5, coreutils, jq, patchelf, }: let extInfo = ( Loading Loading @@ -40,16 +43,18 @@ vscode-utils.buildVscodeMarketplaceExtension { inherit (extInfo) hash arch; }; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook jq patchelf ]; buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib stdenv.cc.cc) # libstdc++.so.6 (lib.getLib glibc) # libgcc_s.so.1 (lib.getLib libz) # libz.so.1 ]; runtimeDependencies = lib.optionals stdenv.hostPlatform.isLinux [ (lib.getLib openssl) # libopenssl.so.3 (lib.getLib icu) # libicui18n.so libicuuc.so (lib.getLib libkrb5) # libgssapi_krb5.so (lib.getLib libz) # libz.so.1 (lib.getLib openssl) # libopenssl.so.3 (lib.getLib stdenv.cc.cc) # libstdc++.so.6 ]; postPatch = '' Loading @@ -59,17 +64,73 @@ vscode-utils.buildVscodeMarketplaceExtension { preFixup = '' ( set -euo pipefail shopt -s globstar shopt -s dotglob # Fix all binaries. for file in "$out"/**/*; do if [[ ! -f "$file" || "$file" == *.so || "$file" == *.dylib ]] || if [[ ! -f "$file" || "$file" == *.so || "$file" == *.a || "$file" == *.dylib ]] || (! isELF "$file" && ! isMachO "$file"); then continue fi echo Making "$file" executable... chmod +x "$file" ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add .NET deps if it is an apphost. if grep 'You must install .NET to run this application.' "$file" > /dev/null; then echo "Adding .NET needed libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$file" fi ''} done ${lib.optionalString stdenv.hostPlatform.isLinux '' # Add the ICU libraries as needed to the globalization DLLs. for file in "$out"/**/{libcoreclr.so,*System.Globalization.Native.so}; do echo "Adding ICU libraries to: $file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ "$file" done # Add the Kerberos libraries as needed to the native security DLL. for file in "$out"/**/*System.Net.Security.Native.so; do echo "Adding Kerberos libraries to: $file" patchelf \ --add-needed libgssapi_krb5.so \ "$file" done # Add the OpenSSL libraries as needed to the OpenSSL native security DLL. for file in "$out"/**/*System.Security.Cryptography.Native.OpenSsl.so; do echo "Adding OpenSSL libraries to: $file" patchelf \ --add-needed libssl.so \ "$file" done # Add the needed binaries to the apphost binaries. for file in $(jq -r '.runtimeDependencies | map(select(.binaries != null) | .installPath + "/" + .binaries[]) | sort | unique | map(sub("/\\./"; "/")) | .[]' < "$out"/share/vscode/extensions/ms-dotnettools.csharp/package.json); do [ -f "$out"/share/vscode/extensions/ms-dotnettools.csharp/"$file" ] || continue echo "Adding .NET needed libraries to: $out/share/vscode/extensions/ms-dotnettools.csharp/$file" patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libgssapi_krb5.so \ --add-needed libssl.so \ "$out"/share/vscode/extensions/ms-dotnettools.csharp/"$file" done ''} ) ''; Loading @@ -78,7 +139,7 @@ vscode-utils.buildVscodeMarketplaceExtension { meta = { description = "Official C# support for Visual Studio Code"; homepage = "https://github.com/dotnet/vscode-csharp"; license = lib.licenses.mit; license = lib.licenses.unfree; maintainers = with lib.maintainers; [ ggg ]; platforms = [ "x86_64-linux" Loading