From 4e1c2089125efe1134f6ccd88e26aab5c0ee30e0 Mon Sep 17 00:00:00 2001 From: 5an7y Date: Fri, 8 May 2026 12:03:03 -0700 Subject: [PATCH] Split winget DSC config into per-VS-edition files Replace the single configuration.dsc.yaml (Community-only) with three edition-specific WinGet DSC configurations: - wdk-vscommunity.dsc.yaml - wdk-vsenterprise.dsc.yaml - wdk-vsprofessional.dsc.yaml Each file installs the correct VS edition with the same WDK components, Windows SDK 28000, and WDK 28000. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- ...tion.dsc.yaml => wdk-vscommunity.dsc.yaml} | 0 .../winget/configs/wdk-vsenterprise.dsc.yaml | 65 +++++++++++++++++++ .../configs/wdk-vsprofessional.dsc.yaml | 65 +++++++++++++++++++ 3 files changed, 130 insertions(+) rename _wdk_utils/winget/configs/{configuration.dsc.yaml => wdk-vscommunity.dsc.yaml} (100%) create mode 100644 _wdk_utils/winget/configs/wdk-vsenterprise.dsc.yaml create mode 100644 _wdk_utils/winget/configs/wdk-vsprofessional.dsc.yaml diff --git a/_wdk_utils/winget/configs/configuration.dsc.yaml b/_wdk_utils/winget/configs/wdk-vscommunity.dsc.yaml similarity index 100% rename from _wdk_utils/winget/configs/configuration.dsc.yaml rename to _wdk_utils/winget/configs/wdk-vscommunity.dsc.yaml diff --git a/_wdk_utils/winget/configs/wdk-vsenterprise.dsc.yaml b/_wdk_utils/winget/configs/wdk-vsenterprise.dsc.yaml new file mode 100644 index 000000000..a7a59b6f7 --- /dev/null +++ b/_wdk_utils/winget/configs/wdk-vsenterprise.dsc.yaml @@ -0,0 +1,65 @@ +# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 +properties: + resources: + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: vsPackage + directives: + description: Install Visual Studio Enterprise + allowPrerelease: true + settings: + id: Microsoft.VisualStudio.Enterprise + source: winget + useLatest: true + - resource: Microsoft.VisualStudio.DSC/VSComponents + id: vsComponents + dependsOn: + - vsPackage + directives: + description: Install required VS workloads and components + settings: + productId: Microsoft.VisualStudio.Product.Enterprise + channelId: VisualStudio.18.Release + includeRecommended: false + components: + - Component.Microsoft.Windows.DriverKit + - Microsoft.Component.MSBuild + - Microsoft.VisualStudio.Component.CoreEditor + - Microsoft.VisualStudio.Component.DiagnosticTools + - Microsoft.VisualStudio.Component.Roslyn.Compiler + - Microsoft.VisualStudio.Component.TextTemplating + - Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.ATL.Spectre + - Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre + - Microsoft.VisualStudio.Component.VC.CoreIde + - Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.Redist.14.Latest + - Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.Runtimes.ARM64EC.Spectre + - Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre + - Microsoft.VisualStudio.Component.VC.Tools.ARM64 + - Microsoft.VisualStudio.Component.VC.Tools.ARM64EC + - Microsoft.VisualStudio.Component.VC.Tools.x86.x64 + - Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core + - Microsoft.VisualStudio.Workload.CoreEditor + - Microsoft.VisualStudio.Workload.NativeDesktop + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: sdkPackage + directives: + description: Install Windows SDK version 28000 + allowPrerelease: true + settings: + id: Microsoft.WindowsSDK.10.0.28000 + source: winget + useLatest: true + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: wdkPackage + dependsOn: + - sdkPackage + directives: + description: Install Windows Driver Kit version 28000 + allowPrerelease: true + settings: + id: Microsoft.WindowsWDK.10.0.28000 + source: winget + useLatest: true + configurationVersion: 0.2.1 diff --git a/_wdk_utils/winget/configs/wdk-vsprofessional.dsc.yaml b/_wdk_utils/winget/configs/wdk-vsprofessional.dsc.yaml new file mode 100644 index 000000000..cdc97e696 --- /dev/null +++ b/_wdk_utils/winget/configs/wdk-vsprofessional.dsc.yaml @@ -0,0 +1,65 @@ +# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 +properties: + resources: + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: vsPackage + directives: + description: Install Visual Studio Professional + allowPrerelease: true + settings: + id: Microsoft.VisualStudio.Professional + source: winget + useLatest: true + - resource: Microsoft.VisualStudio.DSC/VSComponents + id: vsComponents + dependsOn: + - vsPackage + directives: + description: Install required VS workloads and components + settings: + productId: Microsoft.VisualStudio.Product.Professional + channelId: VisualStudio.18.Release + includeRecommended: false + components: + - Component.Microsoft.Windows.DriverKit + - Microsoft.Component.MSBuild + - Microsoft.VisualStudio.Component.CoreEditor + - Microsoft.VisualStudio.Component.DiagnosticTools + - Microsoft.VisualStudio.Component.Roslyn.Compiler + - Microsoft.VisualStudio.Component.TextTemplating + - Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.ATL.Spectre + - Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre + - Microsoft.VisualStudio.Component.VC.CoreIde + - Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.Redist.14.Latest + - Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre + - Microsoft.VisualStudio.Component.VC.Runtimes.ARM64EC.Spectre + - Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre + - Microsoft.VisualStudio.Component.VC.Tools.ARM64 + - Microsoft.VisualStudio.Component.VC.Tools.ARM64EC + - Microsoft.VisualStudio.Component.VC.Tools.x86.x64 + - Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core + - Microsoft.VisualStudio.Workload.CoreEditor + - Microsoft.VisualStudio.Workload.NativeDesktop + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: sdkPackage + directives: + description: Install Windows SDK version 28000 + allowPrerelease: true + settings: + id: Microsoft.WindowsSDK.10.0.28000 + source: winget + useLatest: true + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: wdkPackage + dependsOn: + - sdkPackage + directives: + description: Install Windows Driver Kit version 28000 + allowPrerelease: true + settings: + id: Microsoft.WindowsWDK.10.0.28000 + source: winget + useLatest: true + configurationVersion: 0.2.1