From 4fefc06d085d4513723429f03db2cfa0ba092325 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 20:51:02 +0200 Subject: [PATCH 01/14] Add base files --- configuration.winget | 146 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 configuration.winget diff --git a/configuration.winget b/configuration.winget new file mode 100644 index 0000000000..5354cb3580 --- /dev/null +++ b/configuration.winget @@ -0,0 +1,146 @@ +# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 +# WinGet Configuration File for UniGetUI Development Environment +# This file defines the desired state configuration for setting up a development environment for UniGetUI + +properties: + configurationVersion: 0.2.0 + assertions: + - resource: Microsoft.Windows.Developer/OsVersion + directives: + description: Verify minimum OS version + allowPrerelease: true + settings: + MinVersion: "10.0.19041" + resources: + # Development Tools + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Git for version control + allowPrerelease: true + settings: + id: Git.Git + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Visual Studio 2022 Community + allowPrerelease: true + settings: + id: Microsoft.VisualStudio.2022.Community + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install .NET 8 SDK + allowPrerelease: true + settings: + id: Microsoft.DotNet.SDK.8 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows App SDK + allowPrerelease: true + settings: + id: Microsoft.WindowsAppRuntime.1.7 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install PowerShell 7 + allowPrerelease: true + settings: + id: Microsoft.PowerShell + source: winget + + # Package Managers (for testing UniGetUI functionality) + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Chocolatey + allowPrerelease: true + settings: + id: Chocolatey.Chocolatey + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Scoop + allowPrerelease: true + settings: + id: Scoop.Scoop + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Python (for scripts and tools) + allowPrerelease: true + settings: + id: Python.Python.3.12 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Node.js (for web components) + allowPrerelease: true + settings: + id: OpenJS.NodeJS + source: winget + + # Development and Testing Tools + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows Terminal + allowPrerelease: true + settings: + id: Microsoft.WindowsTerminal + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows Subsystem for Linux + allowPrerelease: true + settings: + id: Microsoft.WSL + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Edge WebView2 + allowPrerelease: true + settings: + id: Microsoft.EdgeWebView2Runtime + source: winget + + # Optional development tools + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Visual Studio Code (optional) + allowPrerelease: true + settings: + id: Microsoft.VisualStudioCode + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows SDK + allowPrerelease: true + settings: + id: Microsoft.WindowsSDK.10 + source: winget + + # Build and deployment tools + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Inno Setup (for installer creation) + allowPrerelease: true + settings: + id: JRSoftware.InnoSetup + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install 7-Zip (for archive handling) + allowPrerelease: true + settings: + id: 7zip.7zip + source: winget From d9ac352b02c6cc02b8f905822da912f4b9bc27c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 21:07:23 +0200 Subject: [PATCH 02/14] add development config --- configuration.winget => winget-dsc/dev.winget | 91 +++++++++---------- 1 file changed, 43 insertions(+), 48 deletions(-) rename configuration.winget => winget-dsc/dev.winget (83%) diff --git a/configuration.winget b/winget-dsc/dev.winget similarity index 83% rename from configuration.winget rename to winget-dsc/dev.winget index 5354cb3580..3878464e99 100644 --- a/configuration.winget +++ b/winget-dsc/dev.winget @@ -12,48 +12,26 @@ properties: settings: MinVersion: "10.0.19041" resources: - # Development Tools + # Basic dependencies - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Git for version control - allowPrerelease: true - settings: - id: Git.Git - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Visual Studio 2022 Community - allowPrerelease: true - settings: - id: Microsoft.VisualStudio.2022.Community - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install .NET 8 SDK - allowPrerelease: true - settings: - id: Microsoft.DotNet.SDK.8 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Windows App SDK + description: Install Microsoft Edge WebView2 allowPrerelease: true settings: - id: Microsoft.WindowsAppRuntime.1.7 + id: Microsoft.EdgeWebView2Runtime source: winget - + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install PowerShell 7 + description: Install Microsoft Visual C++ 2015-2022 Redistributable allowPrerelease: true settings: - id: Microsoft.PowerShell + id: Microsoft.VCRedist.2015-2022.x64 source: winget + # Package Managers (for testing UniGetUI functionality) + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: description: Install Chocolatey @@ -77,58 +55,67 @@ properties: settings: id: Python.Python.3.12 source: winget - + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Node.js (for web components) + description: Install PowerShell 7 allowPrerelease: true settings: - id: OpenJS.NodeJS + id: Microsoft.PowerShell source: winget - # Development and Testing Tools - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Windows Terminal + description: Install Node.js (for web components) allowPrerelease: true settings: - id: Microsoft.WindowsTerminal + id: OpenJS.NodeJS source: winget + + # Build and deployment tools + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Windows Subsystem for Linux + description: Install Git for version control allowPrerelease: true settings: - id: Microsoft.WSL + id: Git.Git source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Microsoft Edge WebView2 + description: Install Visual Studio 2022 Community allowPrerelease: true settings: - id: Microsoft.EdgeWebView2Runtime + id: Microsoft.VisualStudio.2022.Community source: winget - # Optional development tools - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Visual Studio Code (optional) + description: Install .NET 8 SDK allowPrerelease: true settings: - id: Microsoft.VisualStudioCode + id: Microsoft.DotNet.SDK.8 source: winget - + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Windows SDK + description: Install Windows App SDK allowPrerelease: true settings: - id: Microsoft.WindowsSDK.10 + id: Microsoft.WindowsAppRuntime.1.7 source: winget - - # Build and deployment tools + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows SDK + allowPrerelease: true + settings: + id: Microsoft.WindowsSDK.10 + version: 10.0.19041.0 + source: winget + - resource: Microsoft.WinGet.DSC/WinGetPackage directives: description: Install Inno Setup (for installer creation) @@ -144,3 +131,11 @@ properties: settings: id: 7zip.7zip source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install gsudo (sudo for Windows) + allowPrerelease: true + settings: + id: gerardog.gsudo + source: winget From d00c37883eb12a89b74fe863ed4015ae6526c390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 21:26:52 +0200 Subject: [PATCH 03/14] finish dev profile --- winget-dsc/dev.winget | 279 +++++++++++++++++++++++------------------- 1 file changed, 151 insertions(+), 128 deletions(-) diff --git a/winget-dsc/dev.winget b/winget-dsc/dev.winget index 3878464e99..fd999babf7 100644 --- a/winget-dsc/dev.winget +++ b/winget-dsc/dev.winget @@ -5,137 +5,160 @@ properties: configurationVersion: 0.2.0 assertions: - - resource: Microsoft.Windows.Developer/OsVersion - directives: - description: Verify minimum OS version - allowPrerelease: true - settings: - MinVersion: "10.0.19041" + - resource: Microsoft.Windows.Developer/OsVersion + directives: + description: Verify minimum OS version + allowPrerelease: true + settings: + MinVersion: "10.0.19041" resources: - # Basic dependencies - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Edge WebView2 - allowPrerelease: true - settings: - id: Microsoft.EdgeWebView2Runtime - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Visual C++ 2015-2022 Redistributable - allowPrerelease: true - settings: - id: Microsoft.VCRedist.2015-2022.x64 - source: winget - - - # Package Managers (for testing UniGetUI functionality) - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Chocolatey - allowPrerelease: true - settings: - id: Chocolatey.Chocolatey - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Scoop - allowPrerelease: true - settings: - id: Scoop.Scoop - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Python (for scripts and tools) - allowPrerelease: true - settings: - id: Python.Python.3.12 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install PowerShell 7 - allowPrerelease: true - settings: - id: Microsoft.PowerShell - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Node.js (for web components) - allowPrerelease: true - settings: - id: OpenJS.NodeJS - source: winget - - - # Build and deployment tools - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Git for version control - allowPrerelease: true - settings: - id: Git.Git - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Visual Studio 2022 Community - allowPrerelease: true - settings: - id: Microsoft.VisualStudio.2022.Community - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install .NET 8 SDK - allowPrerelease: true - settings: - id: Microsoft.DotNet.SDK.8 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Windows App SDK - allowPrerelease: true - settings: - id: Microsoft.WindowsAppRuntime.1.7 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Windows SDK + + # Basic dependencies + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Edge WebView2 + allowPrerelease: true + settings: + id: Microsoft.EdgeWebView2Runtime + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Visual C++ 2015-2022 Redistributable + allowPrerelease: true + settings: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget + + # Package Managers (for testing UniGetUI functionality) + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Chocolatey + allowPrerelease: true + settings: + id: Chocolatey.Chocolatey + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Scoop allowPrerelease: true - settings: - id: Microsoft.WindowsSDK.10 - version: 10.0.19041.0 + settings: + id: Scoop.Scoop source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Inno Setup (for installer creation) - allowPrerelease: true - settings: - id: JRSoftware.InnoSetup - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install 7-Zip (for archive handling) - allowPrerelease: true - settings: - id: 7zip.7zip - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install gsudo (sudo for Windows) + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Python allowPrerelease: true - settings: - id: gerardog.gsudo + settings: + id: Python.Python.3.13 source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install PowerShell 7 + allowPrerelease: true + settings: + id: Microsoft.PowerShell + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Node.js (for web components) + allowPrerelease: true + settings: + id: OpenJS.NodeJS + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Rust (Cargo) + allowPrerelease: true + settings: + id: Rustlang.Rustup + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install VCPkg + allowPrerelease: true + settings: + id: Microsoft.VCPkg + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install .NET Framework 4.8.1 Developer Pack + allowPrerelease: true + settings: + id: Microsoft.Net.Framework.DeveloperPack.4.8.1 + source: winget + + # Build and deployment tools + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Git for version control + allowPrerelease: true + settings: + id: Git.Git + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Visual Studio 2022 Community + allowPrerelease: true + settings: + id: Microsoft.VisualStudio.2022.Community + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + # This one also serves for dotnet tool + description: Install .NET 8 SDK + allowPrerelease: true + settings: + id: Microsoft.DotNet.SDK.8 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows App SDK + allowPrerelease: true + settings: + id: Microsoft.WindowsAppRuntime.1.7 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Windows SDK + allowPrerelease: true + settings: + id: Microsoft.WindowsSDK.10 + version: 10.0.19041.0 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Inno Setup (for installer creation) + allowPrerelease: true + settings: + id: JRSoftware.InnoSetup + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install 7-Zip (for archive handling) + allowPrerelease: true + settings: + id: 7zip.7zip + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install gsudo (sudo for Windows) + allowPrerelease: true + settings: + id: gerardog.gsudo + source: winget From 1bd46d2de6b6e9381f25228f97edbc908dd58765 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 21:33:29 +0200 Subject: [PATCH 04/14] add develop, min and full configurations --- winget-dsc/configurations.md | 9 ++ .../{dev.winget => develop-unigetui.winget} | 33 +++-- winget-dsc/unigetui-all.winget | 117 ++++++++++++++++++ winget-dsc/unigetui-min.winget | 31 +++++ 4 files changed, 179 insertions(+), 11 deletions(-) create mode 100644 winget-dsc/configurations.md rename winget-dsc/{dev.winget => develop-unigetui.winget} (85%) create mode 100644 winget-dsc/unigetui-all.winget create mode 100644 winget-dsc/unigetui-min.winget diff --git a/winget-dsc/configurations.md b/winget-dsc/configurations.md new file mode 100644 index 0000000000..efe343b4bb --- /dev/null +++ b/winget-dsc/configurations.md @@ -0,0 +1,9 @@ +# Available configurations +### `unigetui-min.winget` +Will install UniGetUI and its dependencies to work (without extra package managers). WinGet and PowerShell5 will work out of the box, but other package managers will need extra installations + +### `unigetui-full.winget` +All in `unigetui-min.winget`, but will also install all required package managers + + +### `unigetui-min.winget` diff --git a/winget-dsc/dev.winget b/winget-dsc/develop-unigetui.winget similarity index 85% rename from winget-dsc/dev.winget rename to winget-dsc/develop-unigetui.winget index fd999babf7..4e1dd33274 100644 --- a/winget-dsc/dev.winget +++ b/winget-dsc/develop-unigetui.winget @@ -79,24 +79,35 @@ properties: id: Rustlang.Rustup source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage +- resource: Microsoft.WinGet.DSC/WinGetPackage + id: installGit directives: - description: Install VCPkg - allowPrerelease: true + description: Install Git for vcpkg + allowPrerelease: true settings: - id: Microsoft.VCPkg - source: winget + id: Git.Git + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage + - resource: Microsoft.Windows.Developer/GitClone + id: cloneVcpkg directives: - description: Install .NET Framework 4.8.1 Developer Pack - allowPrerelease: true + description: Clone vcpkg repository + dependsOn: + - installGit settings: - id: Microsoft.Net.Framework.DeveloperPack.4.8.1 - source: winget + repositoryUrl: https://github.com/microsoft/vcpkg.git + directory: '%SystemDrive%\vcpkg' - # Build and deployment tools + - resource: Microsoft.Windows.Developer/PowerShell + directives: + description: Bootstrap vcpkg + dependsOn: + - cloneVcpkg + settings: + script: | + & '%SystemDrive%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics + # Build and deployment tools - resource: Microsoft.WinGet.DSC/WinGetPackage directives: description: Install Git for version control diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget new file mode 100644 index 0000000000..53abdda8f8 --- /dev/null +++ b/winget-dsc/unigetui-all.winget @@ -0,0 +1,117 @@ +# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 +# WinGet Configuration File for UniGetUI Development Environment +# This file defines the desired state configuration for setting up a development environment for UniGetUI + +properties: + configurationVersion: 0.2.0 + assertions: + - resource: Microsoft.Windows.Developer/OsVersion + directives: + description: Verify minimum OS version + allowPrerelease: true + settings: + MinVersion: "10.0.19041" + resources: + + # Basic dependencies + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Edge WebView2 + allowPrerelease: true + settings: + id: Microsoft.EdgeWebView2Runtime + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Visual C++ 2015-2022 Redistributable + allowPrerelease: true + settings: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget + + # Package Managers (for testing UniGetUI functionality) + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Chocolatey + allowPrerelease: true + settings: + id: Chocolatey.Chocolatey + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Scoop + allowPrerelease: true + settings: + id: Scoop.Scoop + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Python + allowPrerelease: true + settings: + id: Python.Python.3.13 + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install PowerShell 7 + allowPrerelease: true + settings: + id: Microsoft.PowerShell + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Node.js (for web components) + allowPrerelease: true + settings: + id: OpenJS.NodeJS + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Rust (Cargo) + allowPrerelease: true + settings: + id: Rustlang.Rustup + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install .NET 8 SDK + allowPrerelease: true + settings: + id: Microsoft.DotNet.SDK.8 + source: winget + + + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: installGit + directives: + description: Install Git for vcpkg + allowPrerelease: true + settings: + id: Git.Git + source: winget + + - resource: Microsoft.Windows.Developer/GitClone + id: cloneVcpkg + directives: + description: Clone vcpkg repository + dependsOn: + - installGit + settings: + repositoryUrl: https://github.com/microsoft/vcpkg.git + directory: '%SystemDrive%\vcpkg' + + - resource: Microsoft.Windows.Developer/PowerShell + directives: + description: Bootstrap vcpkg + dependsOn: + - cloneVcpkg + settings: + script: | + & '%SystemDrive%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics \ No newline at end of file diff --git a/winget-dsc/unigetui-min.winget b/winget-dsc/unigetui-min.winget new file mode 100644 index 0000000000..d3e1be1121 --- /dev/null +++ b/winget-dsc/unigetui-min.winget @@ -0,0 +1,31 @@ +# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 +# WinGet Configuration File for UniGetUI Development Environment +# This file defines the desired state configuration for setting up a development environment for UniGetUI + +properties: + configurationVersion: 0.2.0 + assertions: + - resource: Microsoft.Windows.Developer/OsVersion + directives: + description: Verify minimum OS version + allowPrerelease: true + settings: + MinVersion: "10.0.19041" + resources: + + # Basic dependencies + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Edge WebView2 + allowPrerelease: true + settings: + id: Microsoft.EdgeWebView2Runtime + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Microsoft Visual C++ 2015-2022 Redistributable + allowPrerelease: true + settings: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget \ No newline at end of file From c8fc1fbbfdb0d336e9d50144754959a0b3148a8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 21:47:47 +0200 Subject: [PATCH 05/14] update files --- winget-dsc/configurations.md | 1 + winget-dsc/develop-unigetui.winget | 52 ++++++++++++++++++------------ winget-dsc/unigetui-all.winget | 9 +++--- 3 files changed, 36 insertions(+), 26 deletions(-) diff --git a/winget-dsc/configurations.md b/winget-dsc/configurations.md index efe343b4bb..922c25c4b6 100644 --- a/winget-dsc/configurations.md +++ b/winget-dsc/configurations.md @@ -7,3 +7,4 @@ All in `unigetui-min.winget`, but will also install all required package manager ### `unigetui-min.winget` +All in `unigetui-full.winget`, but will also install required development tools and clone the repository to your user folder diff --git a/winget-dsc/develop-unigetui.winget b/winget-dsc/develop-unigetui.winget index 4e1dd33274..1196a4c777 100644 --- a/winget-dsc/develop-unigetui.winget +++ b/winget-dsc/develop-unigetui.winget @@ -71,22 +71,22 @@ properties: id: OpenJS.NodeJS source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: +- resource: Microsoft.WinGet.DSC/WinGetPackage + directives: description: Install Rust (Cargo) allowPrerelease: true - settings: + settings: id: Rustlang.Rustup source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage - id: installGit - directives: - description: Install Git for vcpkg - allowPrerelease: true - settings: - id: Git.Git - source: winget + id: installGit + directives: + description: Install Git for vcpkg + allowPrerelease: true + settings: + id: Git.Git + source: winget - resource: Microsoft.Windows.Developer/GitClone id: cloneVcpkg @@ -96,7 +96,7 @@ properties: - installGit settings: repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%SystemDrive%\vcpkg' + directory: '%userprofile%\vcpkg' - resource: Microsoft.Windows.Developer/PowerShell directives: @@ -105,7 +105,7 @@ properties: - cloneVcpkg settings: script: | - & '%SystemDrive%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics + & '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics # Build and deployment tools - resource: Microsoft.WinGet.DSC/WinGetPackage @@ -143,12 +143,12 @@ properties: - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install Windows SDK - allowPrerelease: true + description: Install Windows SDK + allowPrerelease: true settings: - id: Microsoft.WindowsSDK.10 - version: 10.0.19041.0 - source: winget + id: Microsoft.WindowsSDK.10 + version: 10.0.19041.0 + source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage directives: @@ -168,8 +168,18 @@ properties: - resource: Microsoft.WinGet.DSC/WinGetPackage directives: - description: Install gsudo (sudo for Windows) - allowPrerelease: true + description: Install gsudo (sudo for Windows) + allowPrerelease: true settings: - id: gerardog.gsudo - source: winget + id: gerardog.gsudo + source: winget + + # Clone the UniGetUI repository + - resource: Microsoft.Windows.Developer/GitClone + directives: + description: Clone UniGetUI repository + dependsOn: + - installGit + settings: + repositoryUrl: https://github.com/marticliment/UniGetUI.git + directory: '%userprofile%\UniGetUI' diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget index 53abdda8f8..a35befe8f2 100644 --- a/winget-dsc/unigetui-all.winget +++ b/winget-dsc/unigetui-all.winget @@ -87,7 +87,6 @@ properties: id: Microsoft.DotNet.SDK.8 source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage id: installGit directives: @@ -102,16 +101,16 @@ properties: directives: description: Clone vcpkg repository dependsOn: - - installGit + - installGit settings: repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%SystemDrive%\vcpkg' + directory: '%userprofile%\vcpkg' - resource: Microsoft.Windows.Developer/PowerShell directives: description: Bootstrap vcpkg dependsOn: - - cloneVcpkg + - cloneVcpkg settings: script: | - & '%SystemDrive%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics \ No newline at end of file + & '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics From 27000089aee42418a8833fb1a01ec6c716dd4d3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 21:56:58 +0200 Subject: [PATCH 06/14] improvements --- winget-dsc/develop-unigetui.winget | 35 +++++++++++++++--------------- winget-dsc/unigetui-all.winget | 5 ++--- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/winget-dsc/develop-unigetui.winget b/winget-dsc/develop-unigetui.winget index 1196a4c777..6c71aa3de8 100644 --- a/winget-dsc/develop-unigetui.winget +++ b/winget-dsc/develop-unigetui.winget @@ -71,22 +71,22 @@ properties: id: OpenJS.NodeJS source: winget -- resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Rust (Cargo) - allowPrerelease: true - settings: - id: Rustlang.Rustup - source: winget - -- resource: Microsoft.WinGet.DSC/WinGetPackage - id: installGit - directives: - description: Install Git for vcpkg - allowPrerelease: true - settings: - id: Git.Git - source: winget + - resource: Microsoft.WinGet.DSC/WinGetPackage + directives: + description: Install Rust (Cargo) + allowPrerelease: true + settings: + id: Rustlang.Rustup + source: winget + + - resource: Microsoft.WinGet.DSC/WinGetPackage + id: installGit + directives: + description: Install Git for vcpkg + allowPrerelease: true + settings: + id: Git.Git + source: winget - resource: Microsoft.Windows.Developer/GitClone id: cloneVcpkg @@ -104,8 +104,7 @@ properties: dependsOn: - cloneVcpkg settings: - script: | - & '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics + script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" # Build and deployment tools - resource: Microsoft.WinGet.DSC/WinGetPackage diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget index a35befe8f2..eb69405562 100644 --- a/winget-dsc/unigetui-all.winget +++ b/winget-dsc/unigetui-all.winget @@ -110,7 +110,6 @@ properties: directives: description: Bootstrap vcpkg dependsOn: - - cloneVcpkg + - cloneVcpkg settings: - script: | - & '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics + script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" From a4eef2ad78d2215da188a130949e41bb0b02997c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 22:06:08 +0200 Subject: [PATCH 07/14] update to dscv3 --- winget-dsc/develop-unigetui.winget | 328 +++++++++++++---------------- 1 file changed, 144 insertions(+), 184 deletions(-) diff --git a/winget-dsc/develop-unigetui.winget b/winget-dsc/develop-unigetui.winget index 6c71aa3de8..ecd5e915f9 100644 --- a/winget-dsc/develop-unigetui.winget +++ b/winget-dsc/develop-unigetui.winget @@ -1,184 +1,144 @@ -# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 -# WinGet Configuration File for UniGetUI Development Environment -# This file defines the desired state configuration for setting up a development environment for UniGetUI - -properties: - configurationVersion: 0.2.0 - assertions: - - resource: Microsoft.Windows.Developer/OsVersion - directives: - description: Verify minimum OS version - allowPrerelease: true - settings: - MinVersion: "10.0.19041" - resources: - - # Basic dependencies - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Edge WebView2 - allowPrerelease: true - settings: - id: Microsoft.EdgeWebView2Runtime - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Visual C++ 2015-2022 Redistributable - allowPrerelease: true - settings: - id: Microsoft.VCRedist.2015-2022.x64 - source: winget - - # Package Managers (for testing UniGetUI functionality) - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Chocolatey - allowPrerelease: true - settings: - id: Chocolatey.Chocolatey - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Scoop - allowPrerelease: true - settings: - id: Scoop.Scoop - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Python - allowPrerelease: true - settings: - id: Python.Python.3.13 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install PowerShell 7 - allowPrerelease: true - settings: - id: Microsoft.PowerShell - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Node.js (for web components) - allowPrerelease: true - settings: - id: OpenJS.NodeJS - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Rust (Cargo) - allowPrerelease: true - settings: - id: Rustlang.Rustup - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - id: installGit - directives: - description: Install Git for vcpkg - allowPrerelease: true - settings: - id: Git.Git - source: winget - - - resource: Microsoft.Windows.Developer/GitClone - id: cloneVcpkg - directives: - description: Clone vcpkg repository - dependsOn: - - installGit - settings: - repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%userprofile%\vcpkg' - - - resource: Microsoft.Windows.Developer/PowerShell - directives: - description: Bootstrap vcpkg - dependsOn: - - cloneVcpkg - settings: - script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" - - # Build and deployment tools - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Git for version control - allowPrerelease: true - settings: - id: Git.Git - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Visual Studio 2022 Community - allowPrerelease: true - settings: - id: Microsoft.VisualStudio.2022.Community - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - # This one also serves for dotnet tool - description: Install .NET 8 SDK - allowPrerelease: true - settings: - id: Microsoft.DotNet.SDK.8 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Windows App SDK - allowPrerelease: true - settings: - id: Microsoft.WindowsAppRuntime.1.7 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Windows SDK - allowPrerelease: true - settings: - id: Microsoft.WindowsSDK.10 - version: 10.0.19041.0 - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Inno Setup (for installer creation) - allowPrerelease: true - settings: - id: JRSoftware.InnoSetup - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install 7-Zip (for archive handling) - allowPrerelease: true - settings: - id: 7zip.7zip - source: winget - - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install gsudo (sudo for Windows) - allowPrerelease: true - settings: - id: gerardog.gsudo - source: winget - - # Clone the UniGetUI repository - - resource: Microsoft.Windows.Developer/GitClone - directives: - description: Clone UniGetUI repository - dependsOn: - - installGit - settings: - repositoryUrl: https://github.com/marticliment/UniGetUI.git - directory: '%userprofile%\UniGetUI' +$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.json + +metadata: + name: UniGetUI Development Environment + description: Sets up the development environment for UniGetUI + author: UniGetUI Team + +parameters: + +resources: +- name: Verify minimum OS version + type: Microsoft.Windows.Developer/OsVersion + properties: + MinVersion: "10.0.19041" + +# Basic dependencies +- name: Install Microsoft Edge WebView2 + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.EdgeWebView2Runtime + source: winget + +- name: Install Microsoft Visual C++ 2015-2022 Redistributable + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget + +# Package Managers (for testing UniGetUI functionality) +- name: Install Chocolatey + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Chocolatey.Chocolatey + source: winget + +- name: Install Scoop + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Scoop.Scoop + source: winget + +- name: Install Python + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Python.Python.3.13 + source: winget + +- name: Install PowerShell 7 + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.PowerShell + source: winget + +- name: Install Node.js (for web components) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: OpenJS.NodeJS + source: winget + +- name: Install Rust (Cargo) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Rustlang.Rustup + source: winget + +- name: Install Git for vcpkg + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Git.Git + source: winget + +- name: Clone vcpkg repository + type: Microsoft.Windows.Developer/GitClone + dependsOn: + - Install Git for vcpkg + properties: + repositoryUrl: https://github.com/microsoft/vcpkg.git + directory: '%userprofile%\vcpkg' + +- name: Bootstrap vcpkg + type: Microsoft.Windows.Developer/PowerShell + dependsOn: + - Clone vcpkg repository + properties: + script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" + +# Build and deployment tools +- name: Install Git for version control + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Git.Git + source: winget + +- name: Install Visual Studio 2022 Community + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.VisualStudio.2022.Community + source: winget + +- name: Install .NET 8 SDK + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.DotNet.SDK.8 + source: winget + +- name: Install Windows App SDK + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.WindowsAppRuntime.1.7 + source: winget + +- name: Install Windows SDK + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.WindowsSDK.10 + version: 10.0.19041.0 + source: winget + +- name: Install Inno Setup (for installer creation) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: JRSoftware.InnoSetup + source: winget + +- name: Install 7-Zip (for archive handling) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: 7zip.7zip + source: winget + +- name: Install gsudo (sudo for Windows) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: gerardog.gsudo + source: winget + +# Clone the UniGetUI repository +- name: Clone UniGetUI repository + type: Microsoft.Windows.Developer/GitClone + dependsOn: + - Install Git for version control + properties: + repositoryUrl: https://github.com/marticliment/UniGetUI.git + directory: '%userprofile%\UniGetUI' From 85e4966e3a409cd24b9c7164c59e6931156bc976 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 22:07:25 +0200 Subject: [PATCH 08/14] update to dscv3 --- winget-dsc/unigetui-all.winget | 176 ++++++++++++++------------------- winget-dsc/unigetui-min.winget | 52 +++++----- 2 files changed, 100 insertions(+), 128 deletions(-) diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget index eb69405562..9b979a2361 100644 --- a/winget-dsc/unigetui-all.winget +++ b/winget-dsc/unigetui-all.winget @@ -1,115 +1,91 @@ -# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 -# WinGet Configuration File for UniGetUI Development Environment -# This file defines the desired state configuration for setting up a development environment for UniGetUI +$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.json -properties: - configurationVersion: 0.2.0 - assertions: - - resource: Microsoft.Windows.Developer/OsVersion - directives: - description: Verify minimum OS version - allowPrerelease: true - settings: - MinVersion: "10.0.19041" - resources: +metadata: + name: UniGetUI Complete Environment + description: Installs all dependencies and tools for UniGetUI development and runtime + author: UniGetUI Team - # Basic dependencies - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Edge WebView2 - allowPrerelease: true - settings: - id: Microsoft.EdgeWebView2Runtime - source: winget +parameters: - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Visual C++ 2015-2022 Redistributable - allowPrerelease: true - settings: - id: Microsoft.VCRedist.2015-2022.x64 - source: winget +resources: +- name: Verify minimum OS version + type: Microsoft.Windows.Developer/OsVersion + properties: + MinVersion: "10.0.19041" - # Package Managers (for testing UniGetUI functionality) - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Chocolatey - allowPrerelease: true - settings: - id: Chocolatey.Chocolatey - source: winget +# Basic dependencies +- name: Install Microsoft Edge WebView2 + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.EdgeWebView2Runtime + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Scoop - allowPrerelease: true - settings: - id: Scoop.Scoop - source: winget +- name: Install Microsoft Visual C++ 2015-2022 Redistributable + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Python - allowPrerelease: true - settings: - id: Python.Python.3.13 - source: winget +# Package Managers (for testing UniGetUI functionality) +- name: Install Chocolatey + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Chocolatey.Chocolatey + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install PowerShell 7 - allowPrerelease: true - settings: - id: Microsoft.PowerShell - source: winget +- name: Install Scoop + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Scoop.Scoop + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Node.js (for web components) - allowPrerelease: true - settings: - id: OpenJS.NodeJS - source: winget +- name: Install Python + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Python.Python.3.13 + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Rust (Cargo) - allowPrerelease: true - settings: +- name: Install PowerShell 7 + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.PowerShell + source: winget + +- name: Install Node.js (for web components) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: OpenJS.NodeJS + source: winget + +- name: Install Rust (Cargo) + type: Microsoft.WinGet.DSC/WinGetPackage + properties: id: Rustlang.Rustup source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install .NET 8 SDK - allowPrerelease: true - settings: - id: Microsoft.DotNet.SDK.8 - source: winget +- name: Install .NET 8 SDK + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.DotNet.SDK.8 + source: winget - - resource: Microsoft.WinGet.DSC/WinGetPackage - id: installGit - directives: - description: Install Git for vcpkg - allowPrerelease: true - settings: - id: Git.Git - source: winget +- name: Install Git for vcpkg + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Git.Git + source: winget - - resource: Microsoft.Windows.Developer/GitClone - id: cloneVcpkg - directives: - description: Clone vcpkg repository - dependsOn: - - installGit - settings: - repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%userprofile%\vcpkg' +- name: Clone vcpkg repository + type: Microsoft.Windows.Developer/GitClone + dependsOn: + - Install Git for vcpkg + properties: + repositoryUrl: https://github.com/microsoft/vcpkg.git + directory: '%userprofile%\vcpkg' - - resource: Microsoft.Windows.Developer/PowerShell - directives: - description: Bootstrap vcpkg - dependsOn: - - cloneVcpkg - settings: - script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" +- name: Bootstrap vcpkg + type: Microsoft.Windows.Developer/PowerShell + dependsOn: + - Clone vcpkg repository + properties: + script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" diff --git a/winget-dsc/unigetui-min.winget b/winget-dsc/unigetui-min.winget index d3e1be1121..09c6444864 100644 --- a/winget-dsc/unigetui-min.winget +++ b/winget-dsc/unigetui-min.winget @@ -1,31 +1,27 @@ -# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 -# WinGet Configuration File for UniGetUI Development Environment -# This file defines the desired state configuration for setting up a development environment for UniGetUI +$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.json -properties: - configurationVersion: 0.2.0 - assertions: - - resource: Microsoft.Windows.Developer/OsVersion - directives: - description: Verify minimum OS version - allowPrerelease: true - settings: - MinVersion: "10.0.19041" - resources: +metadata: + name: UniGetUI Minimal Runtime Dependencies + description: Installs the minimal runtime dependencies required for UniGetUI + author: UniGetUI Team - # Basic dependencies - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Edge WebView2 - allowPrerelease: true - settings: - id: Microsoft.EdgeWebView2Runtime - source: winget +parameters: - - resource: Microsoft.WinGet.DSC/WinGetPackage - directives: - description: Install Microsoft Visual C++ 2015-2022 Redistributable - allowPrerelease: true - settings: - id: Microsoft.VCRedist.2015-2022.x64 - source: winget \ No newline at end of file +resources: +- name: Verify minimum OS version + type: Microsoft.Windows.Developer/OsVersion + properties: + MinVersion: "10.0.19041" + +# Basic dependencies +- name: Install Microsoft Edge WebView2 + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.EdgeWebView2Runtime + source: winget + +- name: Install Microsoft Visual C++ 2015-2022 Redistributable + type: Microsoft.WinGet.DSC/WinGetPackage + properties: + id: Microsoft.VCRedist.2015-2022.x64 + source: winget From af0927b68dd028164d358daba846817864a94644 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 22:58:35 +0200 Subject: [PATCH 09/14] valid unigetui-min dscv3 file --- winget-dsc/unigetui-min.winget | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/winget-dsc/unigetui-min.winget b/winget-dsc/unigetui-min.winget index 09c6444864..8485db451b 100644 --- a/winget-dsc/unigetui-min.winget +++ b/winget-dsc/unigetui-min.winget @@ -3,25 +3,24 @@ $schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/c metadata: name: UniGetUI Minimal Runtime Dependencies description: Installs the minimal runtime dependencies required for UniGetUI - author: UniGetUI Team - -parameters: + author: Martí Climent resources: -- name: Verify minimum OS version - type: Microsoft.Windows.Developer/OsVersion - properties: - MinVersion: "10.0.19041" - # Basic dependencies - name: Install Microsoft Edge WebView2 - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.EdgeWebView2Runtime source: winget - name: Install Microsoft Visual C++ 2015-2022 Redistributable - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.VCRedist.2015-2022.x64 source: winget + +- name: Install UniGetUI + type: Microsoft.WinGet/Package + properties: + id: MartiCliment.UniGetUI + source: winget From b31dbdaf819c5ef07b25e98fb862bc3990309d30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 23:10:11 +0200 Subject: [PATCH 10/14] valid dscv3 schema --- winget-dsc/configurations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/winget-dsc/configurations.md b/winget-dsc/configurations.md index 922c25c4b6..3edd95e358 100644 --- a/winget-dsc/configurations.md +++ b/winget-dsc/configurations.md @@ -3,7 +3,7 @@ Will install UniGetUI and its dependencies to work (without extra package managers). WinGet and PowerShell5 will work out of the box, but other package managers will need extra installations ### `unigetui-full.winget` -All in `unigetui-min.winget`, but will also install all required package managers +All in `unigetui-min.winget`, but will also install all required package managers (except from vcpkg) ### `unigetui-min.winget` From cf62db7f878ba470571631864a7b862edd2cbf69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 23:10:22 +0200 Subject: [PATCH 11/14] valid dscv3 schema --- winget-dsc/develop-unigetui.winget | 67 ++++++++---------------------- winget-dsc/unigetui-all.winget | 52 +++++++++-------------- 2 files changed, 37 insertions(+), 82 deletions(-) diff --git a/winget-dsc/develop-unigetui.winget b/winget-dsc/develop-unigetui.winget index ecd5e915f9..a2d6f64bd9 100644 --- a/winget-dsc/develop-unigetui.winget +++ b/winget-dsc/develop-unigetui.winget @@ -3,142 +3,111 @@ $schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/c metadata: name: UniGetUI Development Environment description: Sets up the development environment for UniGetUI - author: UniGetUI Team - -parameters: + author: Martí Climent resources: -- name: Verify minimum OS version - type: Microsoft.Windows.Developer/OsVersion - properties: - MinVersion: "10.0.19041" - # Basic dependencies - name: Install Microsoft Edge WebView2 - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.EdgeWebView2Runtime source: winget - name: Install Microsoft Visual C++ 2015-2022 Redistributable - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.VCRedist.2015-2022.x64 source: winget # Package Managers (for testing UniGetUI functionality) - name: Install Chocolatey - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Chocolatey.Chocolatey source: winget - name: Install Scoop - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Scoop.Scoop source: winget - name: Install Python - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Python.Python.3.13 source: winget - name: Install PowerShell 7 - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.PowerShell source: winget - name: Install Node.js (for web components) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: OpenJS.NodeJS source: winget - name: Install Rust (Cargo) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Rustlang.Rustup source: winget - name: Install Git for vcpkg - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Git.Git source: winget -- name: Clone vcpkg repository - type: Microsoft.Windows.Developer/GitClone - dependsOn: - - Install Git for vcpkg - properties: - repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%userprofile%\vcpkg' - -- name: Bootstrap vcpkg - type: Microsoft.Windows.Developer/PowerShell - dependsOn: - - Clone vcpkg repository - properties: - script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" - # Build and deployment tools - name: Install Git for version control - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Git.Git source: winget - name: Install Visual Studio 2022 Community - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.VisualStudio.2022.Community source: winget - name: Install .NET 8 SDK - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.DotNet.SDK.8 source: winget - name: Install Windows App SDK - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.WindowsAppRuntime.1.7 source: winget - name: Install Windows SDK - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.WindowsSDK.10 version: 10.0.19041.0 source: winget - name: Install Inno Setup (for installer creation) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: JRSoftware.InnoSetup source: winget - name: Install 7-Zip (for archive handling) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: 7zip.7zip source: winget - name: Install gsudo (sudo for Windows) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: gerardog.gsudo source: winget - -# Clone the UniGetUI repository -- name: Clone UniGetUI repository - type: Microsoft.Windows.Developer/GitClone - dependsOn: - - Install Git for version control - properties: - repositoryUrl: https://github.com/marticliment/UniGetUI.git - directory: '%userprofile%\UniGetUI' diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget index 9b979a2361..14edebd841 100644 --- a/winget-dsc/unigetui-all.winget +++ b/winget-dsc/unigetui-all.winget @@ -3,89 +3,75 @@ $schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/c metadata: name: UniGetUI Complete Environment description: Installs all dependencies and tools for UniGetUI development and runtime - author: UniGetUI Team - -parameters: + author: Martí Climent resources: -- name: Verify minimum OS version - type: Microsoft.Windows.Developer/OsVersion - properties: - MinVersion: "10.0.19041" - # Basic dependencies - name: Install Microsoft Edge WebView2 - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.EdgeWebView2Runtime source: winget - name: Install Microsoft Visual C++ 2015-2022 Redistributable - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.VCRedist.2015-2022.x64 source: winget +- name: Install UniGetUI + type: Microsoft.WinGet/Package + properties: + id: MartiCliment.UniGetUI + source: winget + # Package Managers (for testing UniGetUI functionality) - name: Install Chocolatey - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Chocolatey.Chocolatey source: winget - name: Install Scoop - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Scoop.Scoop source: winget - name: Install Python - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Python.Python.3.13 source: winget - name: Install PowerShell 7 - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.PowerShell source: winget -- name: Install Node.js (for web components) - type: Microsoft.WinGet.DSC/WinGetPackage +- name: Install NodeJS + type: Microsoft.WinGet/Package properties: id: OpenJS.NodeJS source: winget - name: Install Rust (Cargo) - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Rustlang.Rustup source: winget - name: Install .NET 8 SDK - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Microsoft.DotNet.SDK.8 source: winget - name: Install Git for vcpkg - type: Microsoft.WinGet.DSC/WinGetPackage + type: Microsoft.WinGet/Package properties: id: Git.Git source: winget -- name: Clone vcpkg repository - type: Microsoft.Windows.Developer/GitClone - dependsOn: - - Install Git for vcpkg - properties: - repositoryUrl: https://github.com/microsoft/vcpkg.git - directory: '%userprofile%\vcpkg' - -- name: Bootstrap vcpkg - type: Microsoft.Windows.Developer/PowerShell - dependsOn: - - Clone vcpkg repository - properties: - script: "& '%userprofile%\vcpkg\bootstrap-vcpkg.bat' -disableMetrics" +# vcpkg bootstrap is optional; run scripts\dev-setup-optional.ps1 if needed. From 0bfdb386468dabd1e893d29ae561c1c91fdcbb63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 23:18:05 +0200 Subject: [PATCH 12/14] remove nonexistant packages --- winget-dsc/configurations.md | 10 +++++----- winget-dsc/develop-unigetui.winget | 19 +++---------------- winget-dsc/unigetui-all.winget | 14 +------------- winget-dsc/unigetui-min.winget | 2 +- 4 files changed, 10 insertions(+), 35 deletions(-) diff --git a/winget-dsc/configurations.md b/winget-dsc/configurations.md index 3edd95e358..84b661cf9f 100644 --- a/winget-dsc/configurations.md +++ b/winget-dsc/configurations.md @@ -1,10 +1,10 @@ # Available configurations + ### `unigetui-min.winget` -Will install UniGetUI and its dependencies to work (without extra package managers). WinGet and PowerShell5 will work out of the box, but other package managers will need extra installations +Installs UniGetUI and its dependencies. WinGet and PowerShell 5 will work out of the box, but other package managers will require manual installation. ### `unigetui-full.winget` -All in `unigetui-min.winget`, but will also install all required package managers (except from vcpkg) - +Includes everything from `unigetui-min.winget` and also installs all supported package managers (except for vcpkg and Scoop, which must be installed manually). -### `unigetui-min.winget` -All in `unigetui-full.winget`, but will also install required development tools and clone the repository to your user folder +### `unigetui-dev.winget` +Includes everything from `unigetui-full.winget`, installs required development tools, and clones the repository to your user folder. diff --git a/winget-dsc/develop-unigetui.winget b/winget-dsc/develop-unigetui.winget index a2d6f64bd9..051f50cc31 100644 --- a/winget-dsc/develop-unigetui.winget +++ b/winget-dsc/develop-unigetui.winget @@ -16,7 +16,7 @@ resources: - name: Install Microsoft Visual C++ 2015-2022 Redistributable type: Microsoft.WinGet/Package properties: - id: Microsoft.VCRedist.2015-2022.x64 + id: Microsoft.VCRedist.2015+.x64 source: winget # Package Managers (for testing UniGetUI functionality) @@ -26,12 +26,6 @@ resources: id: Chocolatey.Chocolatey source: winget -- name: Install Scoop - type: Microsoft.WinGet/Package - properties: - id: Scoop.Scoop - source: winget - - name: Install Python type: Microsoft.WinGet/Package properties: @@ -44,7 +38,7 @@ resources: id: Microsoft.PowerShell source: winget -- name: Install Node.js (for web components) +- name: Install NodeJS type: Microsoft.WinGet/Package properties: id: OpenJS.NodeJS @@ -56,12 +50,6 @@ resources: id: Rustlang.Rustup source: winget -- name: Install Git for vcpkg - type: Microsoft.WinGet/Package - properties: - id: Git.Git - source: winget - # Build and deployment tools - name: Install Git for version control type: Microsoft.WinGet/Package @@ -90,8 +78,7 @@ resources: - name: Install Windows SDK type: Microsoft.WinGet/Package properties: - id: Microsoft.WindowsSDK.10 - version: 10.0.19041.0 + id: Microsoft.WindowsSDK.10.0.19041 source: winget - name: Install Inno Setup (for installer creation) diff --git a/winget-dsc/unigetui-all.winget b/winget-dsc/unigetui-all.winget index 14edebd841..127129bb7d 100644 --- a/winget-dsc/unigetui-all.winget +++ b/winget-dsc/unigetui-all.winget @@ -16,7 +16,7 @@ resources: - name: Install Microsoft Visual C++ 2015-2022 Redistributable type: Microsoft.WinGet/Package properties: - id: Microsoft.VCRedist.2015-2022.x64 + id: Microsoft.VCRedist.2015+.x64 source: winget - name: Install UniGetUI @@ -32,12 +32,6 @@ resources: id: Chocolatey.Chocolatey source: winget -- name: Install Scoop - type: Microsoft.WinGet/Package - properties: - id: Scoop.Scoop - source: winget - - name: Install Python type: Microsoft.WinGet/Package properties: @@ -68,10 +62,4 @@ resources: id: Microsoft.DotNet.SDK.8 source: winget -- name: Install Git for vcpkg - type: Microsoft.WinGet/Package - properties: - id: Git.Git - source: winget - # vcpkg bootstrap is optional; run scripts\dev-setup-optional.ps1 if needed. diff --git a/winget-dsc/unigetui-min.winget b/winget-dsc/unigetui-min.winget index 8485db451b..8c6fca8fa0 100644 --- a/winget-dsc/unigetui-min.winget +++ b/winget-dsc/unigetui-min.winget @@ -16,7 +16,7 @@ resources: - name: Install Microsoft Visual C++ 2015-2022 Redistributable type: Microsoft.WinGet/Package properties: - id: Microsoft.VCRedist.2015-2022.x64 + id: Microsoft.VCRedist.2015+.x64 source: winget - name: Install UniGetUI From f7b704c8b35175918040708e474e09fa857f20b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 23:34:30 +0200 Subject: [PATCH 13/14] rename folder --- {winget-dsc => configuration.winget}/configurations.md | 0 {winget-dsc => configuration.winget}/develop-unigetui.winget | 0 {winget-dsc => configuration.winget}/unigetui-all.winget | 0 {winget-dsc => configuration.winget}/unigetui-min.winget | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename {winget-dsc => configuration.winget}/configurations.md (100%) rename {winget-dsc => configuration.winget}/develop-unigetui.winget (100%) rename {winget-dsc => configuration.winget}/unigetui-all.winget (100%) rename {winget-dsc => configuration.winget}/unigetui-min.winget (100%) diff --git a/winget-dsc/configurations.md b/configuration.winget/configurations.md similarity index 100% rename from winget-dsc/configurations.md rename to configuration.winget/configurations.md diff --git a/winget-dsc/develop-unigetui.winget b/configuration.winget/develop-unigetui.winget similarity index 100% rename from winget-dsc/develop-unigetui.winget rename to configuration.winget/develop-unigetui.winget diff --git a/winget-dsc/unigetui-all.winget b/configuration.winget/unigetui-all.winget similarity index 100% rename from winget-dsc/unigetui-all.winget rename to configuration.winget/unigetui-all.winget diff --git a/winget-dsc/unigetui-min.winget b/configuration.winget/unigetui-min.winget similarity index 100% rename from winget-dsc/unigetui-min.winget rename to configuration.winget/unigetui-min.winget From c32b47602315d5e433ab6ded8739d7d5187a91eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=AD=20Climent?= Date: Fri, 8 Aug 2025 23:37:02 +0200 Subject: [PATCH 14/14] Update configurations.md --- configuration.winget/configurations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration.winget/configurations.md b/configuration.winget/configurations.md index 84b661cf9f..57e1eb9864 100644 --- a/configuration.winget/configurations.md +++ b/configuration.winget/configurations.md @@ -6,5 +6,5 @@ Installs UniGetUI and its dependencies. WinGet and PowerShell 5 will work out of ### `unigetui-full.winget` Includes everything from `unigetui-min.winget` and also installs all supported package managers (except for vcpkg and Scoop, which must be installed manually). -### `unigetui-dev.winget` +### `develop-unigetui.winget` Includes everything from `unigetui-full.winget`, installs required development tools, and clones the repository to your user folder.