Skip to content

Instantly share code, notes, and snippets.

@cdhunt
Last active July 24, 2024 08:14
Show Gist options
  • Save cdhunt/7d74bfcb31ccc9eebccdbeba2f1da1b7 to your computer and use it in GitHub Desktop.
Save cdhunt/7d74bfcb31ccc9eebccdbeba2f1da1b7 to your computer and use it in GitHub Desktop.
winget configuration
# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2
# Reference: https://learn.microsoft.com/en-us/windows/package-manager/configuration/
properties:
resources:
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Pwsh"
directives:
description: Install PowerShell 7
allowPrerelease: true
settings:
id: Microsoft.PowerShell
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Code"
directives:
description: Install VisualStudio Code
allowPrerelease: true
uselatest: true
settings:
id: Microsoft.VisualStudioCode
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Terminal"
directives:
description: Install Windows Terminal
allowPrerelease: true
settings:
id: Microsoft.WindowsTerminal
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "OhMyPosh"
directives:
description: Install Oh My Posh
allowPrerelease: true
settings:
id: JanDeDobbeleer.OhMyPosh
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Obsidian"
directives:
description: Install Obsidian
allowPrerelease: true
settings:
id: Obsidian.Obsidian
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "EasyConnect"
directives:
description: Install EasyConnect
allowPrerelease: true
settings:
id: lstratman.easyconnect
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "AzureCLI"
directives:
description: Install Azure CLI
allowPrerelease: true
settings:
id: Microsoft.AzureCLI
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "1Password"
directives:
description: Install 1Password
allowPrerelease: true
settings:
id: AgileBits.1Password
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "1PasswordCli"
dependsOn:
- 1password
directives:
description: Install 1Password CLI
allowPrerelease: true
settings:
id: AgileBits.1Password.CLI
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Git"
directives:
description: Install Git
allowPrerelease: true
uselatest: true
settings:
id: Git.Git
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "GitKraken"
directives:
description: Install GitKraken
allowPrerelease: true
settings:
id: Axosoft.GitKraken
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Chrome"
directives:
description: Install Google Chrome
allowPrerelease: true
settings:
id: Google.Chrome
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "DotNet SDK 6"
directives:
description: Install DotNet SDK 6
allowPrerelease: true
settings:
id: Microsoft.DotNet.SDK.6
source: winget
version: "6.0.321"
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "DotNet SDK 7"
directives:
description: Install DotNet SDK 7
allowPrerelease: true
settings:
id: Microsoft.DotNet.SDK.8
source: winget
uselatest: true
- resource: Microsoft.Windows.Developer/HideFileExtensions
directives:
description: Hide file extensions
allowPrerelease: true
settings:
Ensure: Absent
- resource: Microsoft.WinGet.DSC/WinGetPackage
directives:
description: Install NodeJS 18.18
allowPrerelease: true
settings:
id: OpenJS.NodeJS.LTS
source: winget
version: "18.18.0"
- resource: ComputerManagementDsc/WindowsCapability
id: opensshCapability
directives:
description: Remove OpenSSH Client Capability
allowPrerelease: true
settings:
Name: OpenSSH.Client~~~~0.0.1.0
Ensure: Absent
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: OpenSSH Client
dependsOn:
- opensshCapability
directives:
description: Install OpenSSH Client
allowPrerelease: true
settings:
id: Microsoft.OpenSSH.Beta
source: winget
uselatest: true
- resource: PSDscResources/WindowsOptionalFeature
id: optionalFeatureHyperV
directives:
description: Enable Hyper-V
allowPrerelease: false
settings:
Name: Microsoft-Hyper-V-All
Ensure: Present
- resource: PSDscResources/WindowsOptionalFeature
id: optionalFeatureContainers
directives:
description: Enable Containers
allowPrerelease: false
settings:
Name: Containers
Ensure: Present
- resource: PSDscResources/WindowsOptionalFeature
id: optionalFeatureWSL
dependsOn:
- optionalFeatureHyperV
directives:
description: Enable WSL
allowPrerelease: false
settings:
Name: Microsoft-Windows-Subsystem-Linux
Ensure: Present
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Docker Desktop"
dependsOn:
- optionalFeatureWSL
directives:
description: Install Docker Desktop
allowPrerelease: true
settings:
id: Docker.DockerDesktop
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "WSL Ubuntu"
dependsOn:
- optionalFeatureWSL
directives:
description: Install WSL Ubuntu
allowPrerelease: true
settings:
id: Canonical.Ubuntu.2204
source: winget
uselatest: true
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "Bicep"
dependsOn:
- AzureCLI
directives:
description: Install bicep
allowPrerelease: true
settings:
id: Microsoft.Bicep
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: "nbgv"
directives:
description: Install nbgv
allowPrerelease: true
settings:
id: nbgv
source: winget
uselatest: true
configurationVersion: 0.2.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment