├── packages
├── App
│ ├── ImageCustomise
│ │ ├── Source
│ │ │ └── .source
│ │ └── App.json
│ ├── AdobeAcrobatReaderDCMUIVDI
│ │ ├── Source
│ │ │ ├── VDI-enUS.mst
│ │ │ └── Install.json
│ │ └── App.json
│ ├── LenovoThinkPadHotkey
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── Notepad++
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── MicrosoftEdgeWebView2
│ │ └── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ ├── Cyberduck
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── PuTTY
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── Microsoft.NETLTS
│ │ └── Source
│ │ │ └── Install.json
│ ├── Microsoft.NETSTS
│ │ └── Source
│ │ │ └── Install.json
│ ├── MicrosoftPowerShell
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── MicrosoftSsmsEnu
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── MicrosoftVcRedist14x64
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── MicrosoftVcRedist14x86
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── Audacity
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── MicrosoftSupportCenter
│ │ └── Source
│ │ │ └── Install.json
│ ├── MicrosoftWvdRemoteDesktop
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── PaintDotNetOfflineInstaller
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── MicrosoftVcRedist2012x64
│ │ └── Source
│ │ │ └── Install.json
│ ├── MicrosoftVcRedist2012x86
│ │ └── Source
│ │ │ └── Install.json
│ ├── MicrosoftVcRedist2013x64
│ │ └── Source
│ │ │ └── Install.json
│ ├── MicrosoftVcRedist2013x86
│ │ └── Source
│ │ │ └── Install.json
│ ├── LenovoVantageService
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ ├── Scripts
│ │ │ └── detection.ps1
│ │ └── App.json
│ ├── MozillaFirefox
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Install.ps1
│ │ └── App.json
│ ├── ReincubateCamo
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── AppleMobileDeviceSupport
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── CitrixWorkspaceAppLTSR
│ │ └── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ ├── ConnectWiseControl
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Install.ps1
│ │ └── App.json
│ ├── MicrosoftPowerToys
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── CitrixWorkspaceAppCurrent
│ │ └── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ ├── MicrosoftOneDrive
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── MicrosoftOneDriveVDI
│ │ └── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ ├── ZoomRooms
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── MicrosoftVisualStudioCode
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── ZoomMeetings
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── MicrosoftFSLogixApps
│ │ └── Source
│ │ │ └── Install.json
│ ├── FoxitReader
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── ImageGlass
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── TrackerSoftwarePDFXChangeEditor
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── GoogleChrome
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ ├── initial_preferences.txt
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── MicrosoftEdge
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ ├── initial_preferences.txt
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── VideoLanVlcPlayer
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── Greenshot
│ │ ├── Source
│ │ │ ├── Install.json
│ │ │ └── Uninstall.ps1
│ │ └── App.json
│ ├── RemoteDisplayAnalyzer
│ │ ├── Source
│ │ │ ├── Uninstall.ps1
│ │ │ └── Install.ps1
│ │ └── App.json
│ ├── LogAnalyticsSecrets
│ │ ├── Source
│ │ │ ├── Remove-LogSecrets.ps1
│ │ │ └── Save-LogSecrets.ps1
│ │ └── App.json
│ ├── MimecastOutlookx64
│ │ ├── Source
│ │ │ └── Install.ps1
│ │ └── App.json
│ ├── MimecastOutlookx86
│ │ ├── Source
│ │ │ └── Install.ps1
│ │ └── App.json
│ ├── AdobeAcrobatReaderDCMUI
│ │ ├── Source
│ │ │ └── Install.json
│ │ └── App.json
│ ├── AdobeAcrobatReaderDC
│ │ └── App.json
│ └── MicrosoftAzurePipelinesAgent
│ │ └── Source
│ │ └── Uninstall.ps1
└── Update
│ ├── AdobeAcrobatReaderDCMUIx86
│ └── Source
│ │ └── Install.json
│ ├── AdobeAcrobatReaderDCMUIx64
│ └── Source
│ │ └── Install.json
│ ├── MicrosoftWvdRemoteDesktop
│ └── Source
│ │ └── Install.json
│ ├── MicrosoftVisualStudioCode
│ └── Source
│ │ └── Install.json
│ └── ZoomMeetings
│ └── Source
│ ├── Install.json
│ └── Uninstall.ps1
├── .github
├── CODEOWNERS
├── dependabot.yml
└── workflows
│ └── mkdocs-ci.yml
├── docs
├── assets
│ ├── favicon.ico
│ ├── favicon.png
│ ├── img
│ │ ├── auth01.png
│ │ ├── auth02.png
│ │ ├── intune.png
│ │ ├── deployment.png
│ │ └── intunelogs.png
│ ├── favicon-16x16.png
│ ├── favicon-32x32.png
│ ├── mstile-150x150.png
│ ├── apple-touch-icon.png
│ ├── android-chrome-192x192.png
│ ├── android-chrome-384x384.png
│ ├── android-chrome-512x512.png
│ ├── site.webmanifest
│ └── safari-pinned-tab.svg
├── logging.md
├── index.md
├── pipeline.md
└── setup.md
├── PSAppDeployToolkit
├── lib
│ ├── PSADT.dll
│ ├── PSADT.pdb
│ ├── System.Memory.dll
│ ├── iNKORE.UI.WPF.dll
│ ├── Newtonsoft.Json.dll
│ ├── System.Buffers.dll
│ ├── PSADT.UserInterface.dll
│ ├── PSADT.UserInterface.pdb
│ ├── iNKORE.UI.WPF.Modern.dll
│ ├── System.Numerics.Vectors.dll
│ ├── PSADT.ClientServer.Client.pdb
│ ├── PSADT.ClientServer.Server.dll
│ ├── PSADT.ClientServer.Server.pdb
│ ├── System.Security.Permissions.dll
│ ├── System.Security.AccessControl.dll
│ ├── iNKORE.UI.WPF.Modern.Controls.dll
│ ├── System.Security.Principal.Windows.dll
│ ├── PSADT.ClientServer.Client.Launcher.pdb
│ ├── System.IO.FileSystem.AccessControl.dll
│ ├── System.Runtime.CompilerServices.Unsafe.dll
│ ├── PSADT.ClientServer.Client.exe.config
│ └── PSADT.ClientServer.Client.Launcher.exe.config
├── Assets
│ ├── AppIcon.png
│ └── Banner.Classic.png
├── .vscode
│ ├── extensions.json
│ ├── PSScriptAnalyzerSettings.psd1
│ └── settings.json
└── !README.txt
├── scripts
├── README.md
├── Add-AppJsonProperty.ps1
└── Get-AppDetails.ps1
├── .gitignore
├── template
├── Source
│ └── Install.json
├── Scripts
│ ├── requirement_rule.ps1
│ ├── detection_rule_x64.ps1
│ └── detection_rule_x86.ps1
└── Samples
│ ├── App_MSI.json
│ ├── App_DetectionRule_Script.json
│ ├── App_EXE.json
│ ├── App_DetectionRule_Registry_Existence.json
│ ├── App_DetectionRule_Registry_StringComparison.json
│ ├── App_DetectionRule_Registry_IntegerComparison.json
│ └── App_DetectionRule_Registry_VersionComparison.json
├── LICENSE
├── requirements.txt
├── README.md
└── .vscode
└── settings.json
/packages/App/ImageCustomise/Source/.source:
--------------------------------------------------------------------------------
1 | source
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # Ensure that only changes to workflows etc. are authorised
2 | .github/ @aaronparker
3 |
--------------------------------------------------------------------------------
/docs/assets/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/favicon.ico
--------------------------------------------------------------------------------
/docs/assets/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/favicon.png
--------------------------------------------------------------------------------
/docs/assets/img/auth01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/img/auth01.png
--------------------------------------------------------------------------------
/docs/assets/img/auth02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/img/auth02.png
--------------------------------------------------------------------------------
/docs/assets/img/intune.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/img/intune.png
--------------------------------------------------------------------------------
/docs/assets/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/favicon-16x16.png
--------------------------------------------------------------------------------
/docs/assets/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/favicon-32x32.png
--------------------------------------------------------------------------------
/docs/assets/img/deployment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/img/deployment.png
--------------------------------------------------------------------------------
/docs/assets/img/intunelogs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/img/intunelogs.png
--------------------------------------------------------------------------------
/docs/assets/mstile-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/mstile-150x150.png
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.pdb
--------------------------------------------------------------------------------
/docs/assets/apple-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/apple-touch-icon.png
--------------------------------------------------------------------------------
/scripts/README.md:
--------------------------------------------------------------------------------
1 | # Support Scripts
2 |
3 | Support scripts for updating packages and importing applications into Intune.
4 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/Assets/AppIcon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/Assets/AppIcon.png
--------------------------------------------------------------------------------
/docs/assets/android-chrome-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/android-chrome-192x192.png
--------------------------------------------------------------------------------
/docs/assets/android-chrome-384x384.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/android-chrome-384x384.png
--------------------------------------------------------------------------------
/docs/assets/android-chrome-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/docs/assets/android-chrome-512x512.png
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Memory.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Memory.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/iNKORE.UI.WPF.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/iNKORE.UI.WPF.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Buffers.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Buffers.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/Assets/Banner.Classic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/Assets/Banner.Classic.png
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.UserInterface.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.UserInterface.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.UserInterface.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.UserInterface.pdb
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/iNKORE.UI.WPF.Modern.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/iNKORE.UI.WPF.Modern.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Numerics.Vectors.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Numerics.Vectors.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.pdb
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Server.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.ClientServer.Server.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Server.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.ClientServer.Server.pdb
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Security.Permissions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Security.Permissions.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Security.AccessControl.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Security.AccessControl.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/iNKORE.UI.WPF.Modern.Controls.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/iNKORE.UI.WPF.Modern.Controls.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Security.Principal.Windows.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Security.Principal.Windows.dll
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDCMUIVDI/Source/VDI-enUS.mst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/packages/App/AdobeAcrobatReaderDCMUIVDI/Source/VDI-enUS.mst
--------------------------------------------------------------------------------
/PSAppDeployToolkit/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | // PSAppDeployToolkit default extension recommendations
2 | {
3 | "recommendations": [
4 | "ms-vscode.PowerShell"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.Launcher.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.Launcher.pdb
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.IO.FileSystem.AccessControl.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.IO.FileSystem.AccessControl.dll
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/System.Runtime.CompilerServices.Unsafe.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronparker/packagefactory/HEAD/PSAppDeployToolkit/lib/System.Runtime.CompilerServices.Unsafe.dll
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | # Set update schedule for GitHub Actions
2 | version: 2
3 | updates:
4 | - package-ecosystem: "github-actions"
5 | directory: "/"
6 | schedule:
7 | # Check for updates to GitHub Actions every weekday
8 | interval: "daily"
9 |
--------------------------------------------------------------------------------
/docs/assets/site.webmanifest:
--------------------------------------------------------------------------------
1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
--------------------------------------------------------------------------------
/packages/App/LenovoThinkPadHotkey/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "setup.exe",
5 | "Version": "10.6.5.2"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/S"
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/Notepad++/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "npp.8.8.9.Installer.x64.exe",
5 | "Version": "8.8.9"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/S"
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdgeWebView2/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "MicrosoftEdgeWebView2RuntimeInstallerX64.exe",
5 | "Version": "143.0.3650.80"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/silent /install"
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/Cyberduck/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "Cyberduck-Installer-9.3.1.44136.exe",
5 | "Version": "9.3.1.44136"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/quiet /norestart /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/PuTTY/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "putty-64bit-0.83-installer.msi",
5 | "Version": "0.83"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/.vscode/PSScriptAnalyzerSettings.psd1:
--------------------------------------------------------------------------------
1 | # PSAppDeployToolkit default rules for PSScriptAnalyser, to ensure compatibility with PowerSHell 3.0
2 | @{
3 | Severity = @(
4 | 'Error',
5 | 'Warning'
6 | );
7 | ExcludeRules = @(
8 | 'PSUseDeclaredVarsMoreThanAssigments'
9 | );
10 | Rules = @{
11 | PSUseCompatibleCmdlets = @{
12 | Compatibility = @('desktop-3.0-windows')
13 | };
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/Microsoft.NETLTS/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "windowsdesktop-runtime-10.0.1-win-x64.exe",
5 | "Version": "10.0.1"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/Microsoft.NETSTS/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "windowsdesktop-runtime-9.0.11-win-x64.exe",
5 | "Version": "9.0.11"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerShell/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "PowerShell-7.5.3-win-x64.exe",
5 | "Version": "7.5.3"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" /quiet /norestart /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftSsmsEnu/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "SSMS-Setup-ENU.exe",
5 | "Version": "20.1.10.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/Update/AdobeAcrobatReaderDCMUIx86/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "AcroRdrDCUpd2500120997_MUI.msp",
5 | "Version": "25.001.20997"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/update \"#SetupFile\" /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/Update/AdobeAcrobatReaderDCMUIx64/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "AcroRdrDCx64Upd2500120997_MUI.msp",
5 | "Version": "25.001.20997"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/update \"#SetupFile\" /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist14x64/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vc_redist.x64.exe",
5 | "Version": "14.50.35719.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist14x86/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vc_redist.x86.exe",
5 | "Version": "14.50.35719.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/Audacity/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "audacity-win-3.7.7-64bit.exe",
5 | "Version": "3.7.7"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /MERGETASKS=\"!desktopicon\" /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/lib/PSADT.ClientServer.Client.Launcher.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Package files
2 | *.7z
3 | *.dmg
4 | *.gz
5 | *.iso
6 | *.jar
7 | *.rar
8 | *.tar
9 | *.zip
10 | *.exe
11 | *.msi
12 | *.msix
13 | *.msp
14 | *.msu
15 | *.intunewin
16 |
17 | # Package folders
18 | packages/**/Package
19 | auth.ps1
20 | auth.json
21 | output/**
22 | scripts/**.png
23 |
24 | # PSAppDeployToolkit
25 | !PSAppDeployToolkit/Toolkit/Deploy-Application.exe
26 |
27 | # OS generated files
28 | .DS_Store
29 | .DS_Store?
30 | ._*
31 | .Spotlight-V100
32 | .Trashes
33 | ehthumbs.db
34 | Thumbs.db
35 | *.tmp
36 | .cache
37 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftSupportCenter/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "SupportCenterInstaller.msi",
5 | "Version": "5.2111.1071.1000"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
--------------------------------------------------------------------------------
/packages/App/MicrosoftWvdRemoteDesktop/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "RemoteDesktop_1.2.6873.0_x64.msi",
5 | "Version": "1.2.6873.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=TRUE /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/PaintDotNetOfflineInstaller/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "paint.net.5.1.11.winmsi.x64.msi",
5 | "Version": "5.1.11"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" DESKTOPSHORTCUT=0 /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist2012x64/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vcredist_x64.exe",
5 | "Version": "11.0.61030.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist2012x86/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vcredist_x86.exe",
5 | "Version": "11.0.61030.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist2013x64/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vcredist_x64.exe",
5 | "Version": "12.0.40664.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist2013x86/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "vcredist_x86.exe",
5 | "Version": "12.0.40664.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/Update/MicrosoftWvdRemoteDesktop/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "RemoteDesktop_1.2.6873.0_x64.msi",
5 | "Version": "1.2.6873.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=TRUE /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/LenovoVantageService/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "Lenovo.Vantage.ServiceSetup.exe",
5 | "Version": "3.13.25.0"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/verysilent /NORESTART /type=installpackageswithreboot"
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/App/MozillaFirefox/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "Firefox Setup 140.0.4.msi",
5 | "Version": "140.0.4"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" DESKTOP_SHORTCUT=false TASKBAR_SHORTCUT=false /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/ReincubateCamo/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "camo-windows-latest.msi",
5 | "Version": "1.2.0.7873"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/App/AppleMobileDeviceSupport/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "AppleMobileDeviceSupport64.msi",
5 | "Version": "15.6.0.32"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | ],
14 | "CopyFile": [
15 | ]
16 | }
17 | }
--------------------------------------------------------------------------------
/packages/App/CitrixWorkspaceAppLTSR/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "CitrixWorkspaceApp24.2.0.172.exe",
5 | "Version": "24.2.0.172"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/silent /noreboot /includeSSON /AutoUpdateCheck=auto /AutoUpdateStream=LTSR /DeferUpdateCount=3 /AURolloutPriority=Auto EnableCEIP=False"
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/ConnectWiseControl/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "ConnectWiseControl.ClientSetup.msi",
5 | "Version": "22.5.7881.8171"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | ],
14 | "CopyFile": [
15 | ]
16 | }
17 | }
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerToys/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "PowerToysSetup-0.96.1-x64.exe",
5 | "Version": "0.96.1"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [
10 | "C:\\Program Files\\PowerToys\\*.exe"
11 | ],
12 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
13 | },
14 | "PostInstall": {
15 | "Remove": [],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/App/CitrixWorkspaceAppCurrent/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "CitrixWorkspaceApp24.5.0.131.exe",
5 | "Version": "24.5.0.131"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/silent /noreboot /includeSSON /AutoUpdateCheck=auto /AutoUpdateStream=Current /DeferUpdateCount=3 /AURolloutPriority=Auto EnableCEIP=False"
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftOneDrive/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "OneDriveSetup.exe",
5 | "Version": "24.078.0416.0003"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [
10 | "C:\\Program Files\\Microsoft OneDrive\\*.exe"
11 | ],
12 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
13 | },
14 | "PostInstall": {
15 | "Remove": [],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftOneDriveVDI/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "OneDriveSetup.exe",
5 | "Version": "24.078.0416.0003"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [
10 | "C:\\Program Files\\Microsoft OneDrive\\*.exe"
11 | ],
12 | "ArgumentList": "/allusers /quiet /norestart /log \"#LogPath\\#LogName.log\""
13 | },
14 | "PostInstall": {
15 | "Remove": [],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/App/ZoomRooms/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "zoomrooms-6.6.10.6938-x64.msi",
5 | "Version": "6.6.10.6938"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" /quiet Silent=true EnableSSLVerification=true AcceptGDPR=true SystemOption=495 /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVisualStudioCode/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "VSCodeSetup-x64-1.107.1.exe",
5 | "Version": "1.107.1"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/VERYSILENT /NOCLOSEAPPLICATIONS /NORESTARTAPPLICATIONS /NORESTART /SP- /SUPPRESSMSGBOXES /MERGETASKS=!runcode /LOG=\"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/Update/MicrosoftVisualStudioCode/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "VSCodeSetup-x64-1.107.1.exe",
5 | "Version": "1.107.1"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/VERYSILENT /NOCLOSEAPPLICATIONS /NORESTARTAPPLICATIONS /NORESTART /SP- /SUPPRESSMSGBOXES /MERGETASKS=!runcode /LOG=\"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [],
14 | "CopyFile": []
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/!README.txt:
--------------------------------------------------------------------------------
1 | The content within this folder is digitally signed and modification of any config, string, script, or any other file, is not supported by the PSAppDeployToolkit team.
2 |
3 | To create a new deployment, which will include config and script directories you can modify, please refer to https://psappdeploytoolkit.com/docs/getting-started/creating-a-new-deployment.
4 |
5 | To review the directory structure to see where the config, string, or asset files are that you can modify to suit your environment, please refer to https://psappdeploytoolkit.com/docs/deployment-concepts/deployment-structure.
6 |
--------------------------------------------------------------------------------
/packages/App/ZoomMeetings/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "ZoomInstallerFull.msi",
5 | "Version": "6.7.0.24657"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 zSilentStart=false zNoDesktopShortCut=true /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [
14 | "C:\\Users\\Public\\Desktop\\Zoom.lnk"
15 | ],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/Update/ZoomMeetings/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "ZoomInstallerFull.msi",
5 | "Version": "5.16.2.22807"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 zSilentStart=false zNoDesktopShortCut=true /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [
14 | "C:\\Users\\Public\\Desktop\\Zoom.lnk"
15 | ],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/docs/logging.md:
--------------------------------------------------------------------------------
1 | # Application Install Logging
2 |
3 | The PSPackageFactory supports logging in two primary locations so that you can retrieve logs for troubleshooting. Logs are stored in the Intune Management Extension logs directory for a consistent location.
4 |
5 | * `C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\PSPackageFactoryInstall.log` - `Install.ps1` will write install actions to this log
6 | * `C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\.log` - where supported, application installers will write a specific installation log to this location
7 |
8 | 
9 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftFSLogixApps/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": [
5 | "fslogix.adml",
6 | "fslogix.admx",
7 | "README.txt",
8 | "x64/Release/FSLogixAppsRuleEditorSetup.exe",
9 | "x64/Release/FSLogixAppsSetup.exe"
10 | ],
11 | "Version": "25.09"
12 | },
13 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
14 | "InstallTasks": {
15 | "ArgumentList": "/install /quiet /norestart /log \"#LogPath\\#LogName.log\""
16 | },
17 | "PostInstall": {
18 | "Remove": [],
19 | "CopyFile": []
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/packages/App/FoxitReader/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "FoxitPDFReader20251_enu_Setup.msi",
5 | "Version": "2025.2.0.33046"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" AUTO_UPDATE=0 NOTINSTALLUPDATE=1 MAKEDEFAULT=0 LAUNCHCHECKDEFAULT=0 VIEW_IN_BROWSER=0 DESKTOP_SHORTCUT=0 STARTMENU_SHORTCUT_UNINSTALL=0 DISABLE_UNINSTALL_SURVEY=1 ALLUSERS=1 /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [],
13 | "CopyFile": []
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/template/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "AcroRdrDCx642200220191_MUI.exe",
5 | "Version": "22.002.20191"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "-sfx_nu /sALL /rps /l /msi EULA_ACCEPT=YES ENABLE_CHROMEEXT=0 DISABLE_BROWSER_INTEGRATION=1 ENABLE_OPTIMIZATION=YES ADD_THUMBNAILPREVIEW=0 DISABLEDESKTOPSHORTCUT=1 /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | ],
14 | "CopyFile": [
15 | ]
16 | }
17 | }
--------------------------------------------------------------------------------
/packages/App/LenovoVantageService/Scripts/detection.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | Detect the application
3 | #>
4 |
5 | try {
6 | # Get the path to LenovoVantageService.exe
7 | $Path = "${env:ProgramFiles(x86)}\Lenovo\VantageService"
8 | $InstallDirectory = Get-ChildItem -Path $Path | Where-Object { $_.Name -match "(\d+(\.\d+){1,4})" } | `
9 | Sort-Object -Property @{ Expression = { [System.Version]$_.Name }; Descending = $true } | `
10 | Select-Object -First 1
11 |
12 | # Return success if found
13 | if (Test-Path -Path "$Path\$($InstallDirectory.Name)\LenovoVantageService.exe") {
14 | return 0
15 | }
16 | else {
17 | return 1
18 | }
19 | }
20 | catch {
21 | return 1
22 | }
23 |
--------------------------------------------------------------------------------
/.github/workflows/mkdocs-ci.yml:
--------------------------------------------------------------------------------
1 | name: mkdocs-build
2 |
3 | on:
4 | push:
5 | paths:
6 | - 'docs/**'
7 | - 'mkdocs.yml'
8 | branches:
9 | - main
10 | workflow_dispatch:
11 |
12 | jobs:
13 | deploy:
14 | runs-on: ubuntu-latest
15 | steps:
16 | - uses: actions/checkout@v6
17 |
18 | - uses: actions/cache@v5
19 | with:
20 | key: ${{ github.ref }}
21 | path: .cache
22 |
23 | - uses: actions/setup-python@v6
24 | with:
25 | python-version: 3.x
26 | - run: |
27 | pip install mkdocs-material
28 | pip install pillow cairosvg
29 | git pull origin main
30 | pip install -r requirements.txt
31 | mkdocs gh-deploy --force
32 |
--------------------------------------------------------------------------------
/scripts/Add-AppJsonProperty.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | App properties to App.json
3 | #>
4 | foreach ($file in (Get-ChildItem -Path . -Recurse -Filter "App.json")) {
5 | $Json = Get-Content -Path $file.FullName | ConvertFrom-Json
6 | $Json.Information | Add-Member -MemberType "NoteProperty" -Name "Categories" -Value @()
7 | $Json.Information | Add-Member -MemberType "NoteProperty" -Name "PSPackageFactoryGuid" -Value $((New-Guid).Guid)
8 | $Json | Add-Member -MemberType "NoteProperty" -Name "Dependencies" -Value @()
9 | $Json | Add-Member -MemberType "NoteProperty" -Name "Supersedence" -Value @()
10 | $Json | Add-Member -MemberType "NoteProperty" -Name "Assignments" -Value @()
11 | $Json | ConvertTo-Json | Out-File -Path $file.FullName -Encoding "Utf8"
12 | }
13 |
--------------------------------------------------------------------------------
/packages/App/ImageGlass/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "ImageGlass_9.4.0.1120_x64.msi",
5 | "Version": "9.4.0.1120"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" RUNAPPLICATION=0 ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | "C:\\Users\\Public\\Desktop\\ImageGlass.lnk",
14 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\ImageGlass\\ImageGlass' LICENSE.lnk",
15 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\ImageGlass\\Uninstall ImageGlass*.lnk"
16 | ],
17 | "CopyFile": []
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/packages/App/TrackerSoftwarePDFXChangeEditor/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "EditorV10.x64.msi",
5 | "Version": "10.7.6.404"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" /quiet /norestart SET_AS_DEFAULT=\"0\" VIEW_IN_BROWSERS=\"0\" DESKTOP_SHORTCUTS=\"0\" /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Tracker Software\\PDF-XChange Editor",
14 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Tracker Software\\PDF-XChange Lite"
15 | ],
16 | "CopyFile": []
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/App/GoogleChrome/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "googlechromestandaloneenterprise64.msi",
5 | "Version": "143.0.7499.147"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\"",
10 | "Wait": 10
11 | },
12 | "PostInstall": {
13 | "Remove": [
14 | "C:\\Users\\Public\\Desktop\\Google Chrome.lnk",
15 | "C:\\Program Files\\Google\\Chrome\\Application\\initial_preferences"
16 | ],
17 | "CopyFile": [
18 | {
19 | "Source": "initial_preferences.txt",
20 | "Destination": "C:\\Program Files\\Google\\Chrome\\Application\\initial_preferences"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdge/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "MicrosoftEdgeEnterpriseX64.msi",
5 | "Version": "143.0.3650.80"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 DONOTCREATEDESKTOPSHORTCUT=true DONOTCREATETASKBARSHORTCUT=true /quiet /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | "C:\\Users\\Public\\Desktop\\Microsoft Edge.lnk",
14 | "C:\\Users\\Public\\Desktop\\Edge.lnk"
15 | ],
16 | "CopyFile": [
17 | {
18 | "Source": "initial_preferences.txt",
19 | "Destination": "C:\\Program Files\\Microsoft\\Edge\\Application\\initial_preferences"
20 | }
21 | ]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/packages/App/VideoLanVlcPlayer/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "vlc-3.0.20-win64.msi",
5 | "Version": "3.0.20"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "StopProcess": [],
10 | "ArgumentList": "/package \"#SetupFile\" ALLUSERS=1 /quiet /log \"#LogPath\\#LogName.log\""
11 | },
12 | "PostInstall": {
13 | "Remove": [
14 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\VideoLAN\\VLC\\VideoLAN website.lnk",
15 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\VideoLAN\\VLC\\Release Notes.lnk",
16 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\VideoLAN\\VLC\\Documentation.lnk",
17 | "C:\\Users\\Public\\Desktop\\VLC media player.lnk"
18 | ],
19 | "CopyFile": []
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/template/Scripts/requirement_rule.ps1:
--------------------------------------------------------------------------------
1 | # Specify the name of the application as it appears in the DisplayName value in the Uninstall key location
2 | $ApplicationName = ""
3 |
4 | # Process each key in 32-bit and 64-bit Uninstall registry paths to detect if application is already installed
5 | $UninstallKeyPaths = @("HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall", "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall")
6 | foreach ($UninstallKeyPath in $UninstallKeyPaths) {
7 | $UninstallKeys = Get-ChildItem -Path $UninstallKeyPath
8 | foreach ($UninstallKey in $UninstallKeys) {
9 | $CurrentUninstallKey = Get-ItemProperty -Path $UninstallKey.PSPath -ErrorAction SilentlyContinue
10 | if ($CurrentUninstallKey.DisplayName -like $ApplicationName) {
11 | return 1
12 | }
13 | }
14 | }
15 |
16 | # Handle non-detected applications
17 | return 0
18 |
--------------------------------------------------------------------------------
/packages/App/GoogleChrome/Source/initial_preferences.txt:
--------------------------------------------------------------------------------
1 | {
2 | "homepage": "https://m365.cloud.microsoft/?auth=2",
3 | "homepage_is_newtabpage": false,
4 | "browser": {
5 | "show_home_button": true
6 | },
7 | "session": {
8 | "restore_on_startup": 4,
9 | "startup_urls": []
10 | },
11 | "bookmark_bar": {
12 | "show_on_all_tabs": false
13 | },
14 | "sync_promo": {
15 | "show_on_first_run_allowed": false
16 | },
17 | "distribution": {
18 | "ping_delay": 60,
19 | "suppress_first_run_bubble": true,
20 | "do_not_create_desktop_shortcut": true,
21 | "do_not_create_quick_launch_shortcut": true,
22 | "do_not_launch_chrome": true,
23 | "do_not_register_for_update_launch": true,
24 | "make_chrome_default": false,
25 | "make_chrome_default_for_user": false,
26 | "suppress_first_run_default_browser_prompt": true,
27 | "system_level": true,
28 | "verbose_logging": true
29 | },
30 | "first_run_tabs": []
31 | }
--------------------------------------------------------------------------------
/packages/App/Greenshot/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "Greenshot-INSTALLER-1.3.304-RELEASE.exe",
5 | "Version": "1.3.304"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/SP- /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /LOG=\"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "StopPath": [
13 | "C:\\Program Files\\Greenshot"
14 | ],
15 | "Remove": [
16 | "C:\\Users\\Public\\Desktop\\Greenshot.lnk",
17 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Greenshot\\License.txt.lnk",
18 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Greenshot\\Readme.txt.lnk",
19 | "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Greenshot\\Uninstall Greenshot.lnk"
20 | ],
21 | "CopyFile": [
22 | {
23 | "Source": "greenshot-defaults.ini",
24 | "Destination": "C:\\Program Files\\Greenshot\\greenshot-defaults.ini"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/template/Scripts/detection_rule_x64.ps1:
--------------------------------------------------------------------------------
1 | # Specify the name of the application as it appears in the DisplayName value in the Uninstall key location
2 | $ApplicationName = ""
3 |
4 | # Define minimum required version
5 | $ApplicationVersion = "1.0.0"
6 |
7 | # Process each key in 64-bit Uninstall registry path and detect if application is installed, or if a newer version exists that should be superseeded
8 | $UninstallKeyPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall"
9 | $UninstallKeys = Get-ChildItem -Path $UninstallKeyPath
10 | foreach ($UninstallKey in $UninstallKeys) {
11 | $CurrentUninstallKey = Get-ItemProperty -Path $UninstallKey.PSPath -ErrorAction SilentlyContinue
12 | if ($CurrentUninstallKey.DisplayName -like $ApplicationName) {
13 | # An installed version of the application was detected, ensure the version info is equal to or greater than with what's specified as the minimum required version
14 | if ([System.Version]$CurrentUninstallKey.DisplayVersion -ge [System.Version]$ApplicationVersion) {
15 | return 0
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/template/Scripts/detection_rule_x86.ps1:
--------------------------------------------------------------------------------
1 | # Specify the name of the application as it appears in the DisplayName value in the Uninstall key location
2 | $ApplicationName = ""
3 |
4 | # Define minimum required version
5 | $ApplicationVersion = "1.0.0"
6 |
7 | # Process each key in 32-bit Uninstall registry path and detect if application is installed, or if a newer version exists that should be superseeded
8 | $UninstallKeyPath = "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall"
9 | $UninstallKeys = Get-ChildItem -Path $UninstallKeyPath
10 | foreach ($UninstallKey in $UninstallKeys) {
11 | $CurrentUninstallKey = Get-ItemProperty -Path $UninstallKey.PSPath -ErrorAction SilentlyContinue
12 | if ($CurrentUninstallKey.DisplayName -like $ApplicationName) {
13 | # An installed version of the application was detected, ensure the version info is equal to or greater than with what's specified as the minimum required version
14 | if ([System.Version]$CurrentUninstallKey.DisplayVersion -ge [System.Version]$ApplicationVersion) {
15 | return 0
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 Aaron Parker
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdge/Source/initial_preferences.txt:
--------------------------------------------------------------------------------
1 | {
2 | "bookmark_bar": {
3 | "show_apps_shortcut": true,
4 | "show_managed_bookmarks": true,
5 | "show_on_all_tabs": false
6 | },
7 | "bookmarks": {
8 | "editing_enabled": true
9 | },
10 | "browser": {
11 | "dark_theme": true,
12 | "first_run_tabs": [
13 | "https://www.office.com"
14 | ],
15 | "show_toolbar_bookmarks_button": true,
16 | "show_toolbar_collections_button": true,
17 | "show_toolbar_downloads_button": true,
18 | "show_home_button": true,
19 | "show_prompt_before_closing_tabs": true,
20 | "show_toolbar_history_button": true
21 | },
22 | "default_search_provider": {
23 | "enabled": true,
24 | "search_url": "www.bing.com"
25 | },
26 | "fullscreen": {
27 | "allowed": true
28 | },
29 | "homepage": "https://www.office.com/",
30 | "homepage_is_newtabpage": false,
31 | "history": {
32 | "clear_on_exit": false,
33 | "deleting_enabled": true
34 | },
35 | "feedback_allowed": false
36 | }
--------------------------------------------------------------------------------
/packages/App/RemoteDisplayAnalyzer/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | try {
27 | # Remove the directory
28 | $Path = "$Env:ProgramFiles\RemoteDisplayAnalyzer"
29 | Get-Process -ErrorAction "SilentlyContinue" | `
30 | Where-Object { $_.Path -like "$Env:ProgramFiles\RemoteDisplayAnalyzer\*" } | `
31 | Stop-Process -Force -ErrorAction "SilentlyContinue"
32 | Remove-Item -Path $Path -Force -Recurse
33 | }
34 | catch {
35 | throw $_
36 | }
37 |
--------------------------------------------------------------------------------
/template/Samples/App_MSI.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI",
4 | "SetupFile": "Setup.msi",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallExperience": "system \\ user",
17 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow"
18 | },
19 | "RequirementRule": {
20 | "MinimumRequiredOperatingSystem": "W10_1809",
21 | "Architecture": "All \\ x64 \\ x86"
22 | },
23 | "CustomRequirementRule": [
24 | ],
25 | "DetectionRule": [
26 | {
27 | "Type": "MSI",
28 | "ProductCode": "{00000000-0000-0000-0000-000000000000}",
29 | "ProductVersionOperator": "notConfigured",
30 | "ProductVersion": ""
31 | }
32 | ],
33 | "TenantInformation": {
34 | "Name": "tenant.onmicrosoft.com",
35 | "PromptBehavior": "Always \\ Auto \\ Never",
36 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
37 | }
38 | }
--------------------------------------------------------------------------------
/packages/App/RemoteDisplayAnalyzer/Source/Install.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | try {
27 | # Copy the file into the target path
28 | $DestinationPath = "$Env:ProgramFiles\RemoteDisplayAnalyzer"
29 | New-Item -Path $DestinationPath -ItemType "Directory" -Force -ErrorAction "SilentlyContinue" | Out-Null
30 | $File = Get-ChildItem -Path $PWD -Include "RemoteDisplayAnalyzer.exe" -Recurse
31 | Copy-Item -Path $File.FullName -Destination $DestinationPath -Force
32 | }
33 | catch {
34 | throw $_
35 | }
36 |
--------------------------------------------------------------------------------
/packages/App/LogAnalyticsSecrets/Source/Remove-LogSecrets.ps1:
--------------------------------------------------------------------------------
1 | #Requires -PSEdition Desktop
2 | #Requires -RunAsAdministrator
3 | <#
4 | Delete the key file
5 | #>
6 | [CmdletBinding()]
7 | param (
8 | [System.String] $Path = "$Env:SystemRoot\System32\config\systemprofile\AppData\Local\key.xml"
9 | )
10 |
11 | begin {
12 | #region Restart if running in a 32-bit session
13 | if (!([System.Environment]::Is64BitProcess)) {
14 | if ([System.Environment]::Is64BitOperatingSystem) {
15 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
16 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
17 | $params = @{
18 | FilePath = $ProcessPath
19 | ArgumentList = $Arguments
20 | Wait = $True
21 | WindowStyle = "Hidden"
22 | }
23 | Start-Process @params
24 | exit 0
25 | }
26 | }
27 | #endregion
28 | }
29 |
30 | process {
31 | try {
32 | if (Test-Path -Path $Path) {
33 | Remove-Item -Path $Path -Force -ErrorAction "SilentlyContinue"
34 | }
35 | }
36 | catch {
37 | throw $_
38 | }
39 | }
40 |
41 | end {
42 | }
43 |
--------------------------------------------------------------------------------
/template/Samples/App_DetectionRule_Script.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI \\ EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "",
17 | "UninstallCommand": "",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Script",
30 | "ScriptFile": "File.ps1",
31 | "EnforceSignatureCheck": "true \\ false",
32 | "RunAs32Bit": "true \\ false"
33 | }
34 | ],
35 | "TenantInformation": {
36 | "Name": "tenant.onmicrosoft.com",
37 | "PromptBehavior": "Always \\ Auto \\ Never",
38 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/scripts/Get-AppDetails.ps1:
--------------------------------------------------------------------------------
1 | [CmdletBinding()]
2 | [Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSAvoidUsingWriteHost", "")]
3 | [Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSAvoidUsingInvokeExpression", "")]
4 | param (
5 | [Parameter()]
6 | [System.String] $Path = $PWD,
7 |
8 | [Parameter()]
9 | [System.String] $PackageFolder = "packages",
10 |
11 | [Parameter()]
12 | [System.String] $PackageManifest = "App.json"
13 | )
14 |
15 | try {
16 | # Read the list of applications; we're assuming that $Manifest exists
17 | Write-Host -ForegroundColor "Cyan" "Get package list from: $([System.IO.Path]::Combine($Path, $PackageFolder))."
18 | $ManifestList = Get-ChildItem -Path $([System.IO.Path]::Combine($Path, $PackageFolder)) -Recurse -Filter $PackageManifest
19 | Write-Host -ForegroundColor "Cyan" "Found packages: $($ManifestList.Count)"
20 | }
21 | catch {
22 | throw $_
23 | }
24 |
25 | # Walk through the list of applications
26 | foreach ($ManifestJson in $ManifestList) {
27 | try {
28 | # Read the manifest file and convert from JSON
29 | Write-Host -ForegroundColor "Cyan" "Read manifest: $($ManifestJson.FullName)"
30 | $Manifest = Get-Content -Path $ManifestJson.FullName -ErrorAction "SilentlyContinue" | ConvertFrom-Json -ErrorAction "SilentlyContinue"
31 | }
32 | catch {
33 | throw $_
34 | }
35 | $Manifest.Application.Filter
36 | }
37 |
--------------------------------------------------------------------------------
/template/Samples/App_EXE.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "Setup.exe /s",
17 | "UninstallCommand": "Uninstall.exe /s",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Script",
30 | "ScriptFile": "C:\\Scripts\\File.ps1",
31 | "EnforceSignatureCheck": "true \\ false",
32 | "RunAs32Bit": "true \\ false"
33 | }
34 | ],
35 | "TenantInformation": {
36 | "Name": "tenant.onmicrosoft.com",
37 | "PromptBehavior": "Always \\ Auto \\ Never",
38 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2016-2021 Martin Donath
2 |
3 | # Permission is hereby granted, free of charge, to any person obtaining a copy
4 | # of this software and associated documentation files (the "Software"), to
5 | # deal in the Software without restriction, including without limitation the
6 | # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7 | # sell copies of the Software, and to permit persons to whom the Software is
8 | # furnished to do so, subject to the following conditions:
9 |
10 | # The above copyright notice and this permission notice shall be included in
11 | # all copies or substantial portions of the Software.
12 |
13 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | # FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
16 | # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18 | # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19 | # IN THE SOFTWARE.
20 |
21 | # Direct dependencies
22 | mkdocs>=1.1
23 | Pygments>=2.4
24 | markdown>=3.2
25 | pymdown-extensions>=7.0
26 | mkdocs-material-extensions>=1.0
27 | mkdocs-redirects >= 1.0.1
28 | mkdocs-minify-plugin >= 0.4.0
29 |
30 | # Requirements for plugins
31 | requests>=2.26
32 |
--------------------------------------------------------------------------------
/packages/App/CitrixWorkspaceAppLTSR/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | try {
27 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
28 | $Uninstaller = Get-ChildItem -Path "${env:ProgramFiles(x86)}\Citrix" -Filter "TrolleyExpress.exe" -Recurse -ErrorAction "SilentlyContinue"
29 | $params = @{
30 | FilePath = $Uninstaller.FullName
31 | ArgumentList = "/silent /uninstall /cleanup"
32 | NoNewWindow = $True
33 | PassThru = $True
34 | Wait = $True
35 | }
36 | $result = Start-Process @params
37 | }
38 | catch {
39 | throw $_
40 | }
41 | finally {
42 | exit $result.ExitCode
43 | }
44 |
--------------------------------------------------------------------------------
/packages/App/CitrixWorkspaceAppCurrent/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | try {
27 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
28 | $Uninstaller = Get-ChildItem -Path "${env:ProgramFiles(x86)}\Citrix" -Filter "TrolleyExpress.exe" -Recurse -ErrorAction "SilentlyContinue"
29 | $params = @{
30 | FilePath = $Uninstaller.FullName
31 | ArgumentList = "/silent /uninstall /cleanup"
32 | NoNewWindow = $True
33 | PassThru = $True
34 | Wait = $True
35 | }
36 | $result = Start-Process @params
37 | }
38 | catch {
39 | throw $_
40 | }
41 | finally {
42 | exit $result.ExitCode
43 | }
44 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdge/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | $Version = Get-ChildItem -Path "${Env:ProgramFiles(x86)}\Microsoft\Edge\Application" | Where-Object { $_.Name -match "(\d+(\.\d+){1,4}).*" } | `
27 | Sort-Object -Property @{ Expression = { [System.Version]$_.Name }; Descending = $true }
28 | $Setup = Resolve-Path -Path "$($Version.FullName)\Installer\setup.exe"
29 | $params = @{
30 | FilePath = $Setup.Path
31 | ArgumentList = "--uninstall --force-uninstall --system-level"
32 | NoNewWindow = $True
33 | PassThru = $True
34 | Wait = $True
35 | }
36 | $result = Start-Process @params
37 | }
38 | catch {
39 | throw $_
40 | }
41 | finally {
42 | exit $result.ExitCode
43 | }
44 |
--------------------------------------------------------------------------------
/PSAppDeployToolkit/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | // PSAppDeployToolkit default settings to ensure consistent code formatting and file encoding
2 | {
3 | //-------- Indentation configuration --------
4 | "editor.detectIndentation": true,
5 | "editor.formatOnPaste": true,
6 | "editor.insertSpaces": false,
7 | "editor.renderWhitespace": "boundary",
8 | "editor.tabSize": 4,
9 | //-------- Files configuration --------
10 | "files.autoGuessEncoding": true,
11 | "files.encoding": "utf8",
12 | "files.insertFinalNewline": true,
13 | "files.trimTrailingWhitespace": true,
14 | //-------- PowerShell configuration --------
15 | "powershell.codeFormatting.addWhitespaceAroundPipe": true,
16 | "powershell.codeFormatting.autoCorrectAliases": true,
17 | "powershell.codeFormatting.ignoreOneLineBlock": true,
18 | "powershell.codeFormatting.newLineAfterCloseBrace": true,
19 | "powershell.codeFormatting.preset": "OTBS",
20 | "powershell.codeFormatting.trimWhitespaceAroundPipe": true,
21 | "powershell.codeFormatting.useConstantStrings": true,
22 | "powershell.codeFormatting.useCorrectCasing": true,
23 | "powershell.codeFormatting.whitespaceAfterSeparator": true,
24 | "powershell.codeFormatting.whitespaceAroundOperator": true,
25 | "powershell.codeFormatting.whitespaceBeforeOpenBrace": true,
26 | "powershell.codeFormatting.whitespaceBeforeOpenParen": true,
27 | "powershell.powerShellDefaultVersion": "Windows PowerShell (x64)",
28 | "powershell.scriptAnalysis.settingsPath": ".\\.vscode\\PSScriptAnalyzerSettings.psd1"
29 | }
30 |
--------------------------------------------------------------------------------
/packages/App/ConnectWiseControl/Source/Install.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
27 | $Installer = Get-ChildItem -Path $PWD -Filter "ConnectWiseControl.ClientSetup.msi" -Recurse -ErrorAction "SilentlyContinue"
28 | $params = @{
29 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
30 | ArgumentList = "/package `"$($Installer.FullName)`" /quiet /log `"C:\ProgramData\PackageFactory\logs\ConnectWiseControl.log`""
31 | NoNewWindow = $True
32 | PassThru = $True
33 | Wait = $True
34 | }
35 | $result = Start-Process @params
36 | }
37 | catch {
38 | throw $_
39 | }
40 | finally {
41 | exit $result.ExitCode
42 | }
43 |
--------------------------------------------------------------------------------
/packages/App/MimecastOutlookx64/Source/Install.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
27 | $Installer = Get-ChildItem -Path $PWD -Filter "Mimecast*.msi" -Recurse -ErrorAction "SilentlyContinue"
28 | $params = @{
29 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
30 | ArgumentList = "/package `"$($Installer.FullName)`" LAUNCHOUTLOOKONEXIT=0 ALLUSERS=1 /quiet /log `"C:\ProgramData\PackageFactory\logs\MimecastOutlook.log`""
31 | NoNewWindow = $True
32 | PassThru = $True
33 | Wait = $True
34 | }
35 | $result = Start-Process @params
36 | }
37 | catch {
38 | throw $_
39 | }
40 | finally {
41 | exit $result.ExitCode
42 | }
43 |
--------------------------------------------------------------------------------
/packages/App/MimecastOutlookx86/Source/Install.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
27 | $Installer = Get-ChildItem -Path $PWD -Filter "Mimecast*.msi" -Recurse -ErrorAction "SilentlyContinue"
28 | $params = @{
29 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
30 | ArgumentList = "/package `"$($Installer.FullName)`" LAUNCHOUTLOOKONEXIT=0 ALLUSERS=1 /quiet /log `"C:\ProgramData\PackageFactory\logs\MimecastOutlook.log`""
31 | NoNewWindow = $True
32 | PassThru = $True
33 | Wait = $True
34 | }
35 | $result = Start-Process @params
36 | }
37 | catch {
38 | throw $_
39 | }
40 | finally {
41 | exit $result.ExitCode
42 | }
43 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 📦 PSPackageFactory
2 |
3 | ## A Package Factory for Microsoft Intune
4 |
5 | 
6 |
7 | **PSPackageFactory** is a fork of [IntuneWin32AppPackager](https://github.com/MSEndpointMgr/IntuneWin32AppPackager) combined with [Evergreen](https://stealthpuppy.com/evergreen) and [VcRedist](https://vcredist.com/) to create an automated packaging factory for Microsoft Intune.
8 |
9 | **Documentation**: [https://stealthpuppy.com/packagefactory](https://stealthpuppy.com/packagefactory)
10 |
11 | ## 🤖 Automated Packaging Framework
12 |
13 | This package factory provides a library of applications for automatic update, packaging and import into Microsoft Intune. `New-Win32Package.ps1` uses Evergreen and VcRedist to download the latest version of a target application before packaging and importing into Intune.
14 |
15 | Evergreen keeps the library up to date by updating `App.json` for each package via a GitHub Workflow that runs once every 24 hours.
16 |
17 | [](https://github.com/aaronparker/packagefactory/actions/workflows/update-packagejson.yml)
18 |
19 | ## 🤚🏻 Manual Packaging Framework
20 |
21 | Even if you're using a solution such as [Patch My PC](https://patchmypc.com/), there are applications that can't be automatically updated (e.g., installers are locked behind a login, or an installer that is custom to the target environment), this packaging framework can be used as a repeatable process to package and import those applications into Intune.
22 |
--------------------------------------------------------------------------------
/packages/App/MozillaFirefox/Source/Install.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Installs the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | New-Item -Path "$env:ProgramData\PackageFactory\Logs" -ItemType "Directory" -ErrorAction "SilentlyContinue" | Out-Null
27 | $Installer = Get-ChildItem -Path $PWD -Filter "Firefox*.msi" -Recurse -ErrorAction "SilentlyContinue"
28 | $params = @{
29 | FilePath = "$env:SystemRoot\System32\msiexec.exe"
30 | ArgumentList = "/package `"$($Installer.FullName)`" DESKTOP_SHORTCUT=false TASKBAR_SHORTCUT=false /quiet /log `"C:\ProgramData\PackageFactory\logs\MozillaFirefox.log`""
31 | NoNewWindow = $True
32 | PassThru = $True
33 | Wait = $True
34 | }
35 | $result = Start-Process @params
36 | }
37 | catch {
38 | throw $_
39 | }
40 | finally {
41 | exit $result.ExitCode
42 | }
43 |
--------------------------------------------------------------------------------
/template/Samples/App_DetectionRule_Registry_Existence.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI \\ EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "",
17 | "UninstallCommand": "",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Registry",
30 | "DetectionMethod": "Existence",
31 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\123",
32 | "ValueName": "DisplayVersion",
33 | "DetectionType": "exists \\ notExists",
34 | "Check32BitOn64System": "false \\ true"
35 | }
36 | ],
37 | "TenantInformation": {
38 | "Name": "tenant.onmicrosoft.com",
39 | "PromptBehavior": "Always \\ Auto \\ Never",
40 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdgeWebView2/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | $Version = Get-ChildItem -Path "${Env:ProgramFiles(x86)}\Microsoft\EdgeWebView\Application" | Where-Object { $_.Name -match "(\d+(\.\d+){1,4}).*" } | `
27 | Sort-Object -Property @{ Expression = { [System.Version]$_.Name }; Descending = $true }
28 | $Setup = Resolve-Path -Path "$($Version.FullName)\Installer\setup.exe"
29 | $params = @{
30 | FilePath = $Setup.Path
31 | ArgumentList = "--force-uninstall --uninstall --msedgewebview --system-level --verbose-logging"
32 | NoNewWindow = $True
33 | PassThru = $True
34 | Wait = $True
35 | }
36 | $result = Start-Process @params
37 | }
38 | catch {
39 | throw $_
40 | }
41 | finally {
42 | exit $result.ExitCode
43 | }
44 |
--------------------------------------------------------------------------------
/template/Samples/App_DetectionRule_Registry_StringComparison.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI \\ EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "",
17 | "UninstallCommand": "",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Registry",
30 | "DetectionMethod": "StringComparison",
31 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\123",
32 | "ValueName": "DisplayVersion",
33 | "Operator": "notEqual \\ equal",
34 | "Value": "1.0.0",
35 | "Check32BitOn64System": "false \\ true"
36 | }
37 | ],
38 | "TenantInformation": {
39 | "Name": "tenant.onmicrosoft.com",
40 | "PromptBehavior": "Always \\ Auto \\ Never",
41 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDCMUI/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "AcroRdrDCx642500120997_MUI.exe",
5 | "Version": "25.001.20997"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "-sfx_nu /sALL /rps /l /msi EULA_ACCEPT=YES ENABLE_CHROMEEXT=0 DISABLE_BROWSER_INTEGRATION=1 ENABLE_OPTIMIZATION=YES ADD_THUMBNAILPREVIEW=1 DISABLEDESKTOPSHORTCUT=1 /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | "C:\\Users\\Public\\Desktop\\Adobe Acrobat.lnk"
14 | ],
15 | "CopyFile": [],
16 | "Run": [
17 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bIsSCReducedModeEnforcedEx\" /d 1 /t \"REG_DWORD\" /f | Out-Null",
18 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\\cIPM\" /v \"bDontShowMsgWhenViewingDoc\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
19 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bAcroSuppressUpsell\" /d 1 /t \"REG_DWORD\" /f | Out-Null",
20 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bUpdater\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
21 | "reg add \"HKLM\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Reader\\{AC76BA86-7AD7-1033-7B44-AC0F074E4100}\" /v \"Mode\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
22 | "reg add \"HKLM\\SOFTWARE\\Adobe\\Adobe Acrobat\\DC\\Installer\" /v \"DisableMaintenance\" /d 1 /t \"REG_DWORD\" /f | Out-Null"
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/packages/App/Greenshot/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | Get-Process -ErrorAction "SilentlyContinue" | `
27 | Where-Object { $_.Path -like "$env:ProgramFiles\Greenshot\*" } | `
28 | Stop-Process -Force -ErrorAction "SilentlyContinue"
29 | }
30 | catch {
31 | Write-Warning -Message "Failed to stop OneDrive processes."
32 | }
33 |
34 | try {
35 | $params = @{
36 | FilePath = "$env:ProgramFiles\Greenshot\unins000.exe"
37 | ArgumentList = "/VERYSILENT"
38 | NoNewWindow = $True
39 | PassThru = $True
40 | Wait = $True
41 | }
42 | $result = Start-Process @params
43 | if ($result.ExitCode -eq 0) {
44 | Remove-Item -Path "$env:ProgramFiles\Greenshot" -Recurse -Force
45 | }
46 | }
47 | catch {
48 | throw $_
49 | }
50 | finally {
51 | exit $result.ExitCode
52 | }
53 |
--------------------------------------------------------------------------------
/docs/assets/safari-pinned-tab.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/template/Samples/App_DetectionRule_Registry_IntegerComparison.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI \\ EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "",
17 | "UninstallCommand": "",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Registry",
30 | "DetectionMethod": "IntegerComparison",
31 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\123",
32 | "ValueName": "DisplayVersion",
33 | "Operator": "notEqual \\ lessThanOrEqual \\ lessThan \\ greaterThanOrEqual \\ greaterThan \\ equal",
34 | "Value": "1",
35 | "Check32BitOn64System": "false \\ true"
36 | }
37 | ],
38 | "TenantInformation": {
39 | "Name": "tenant.onmicrosoft.com",
40 | "PromptBehavior": "Always \\ Auto \\ Never",
41 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/template/Samples/App_DetectionRule_Registry_VersionComparison.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "MSI \\ EXE",
4 | "SetupFile": "Setup.exe",
5 | "SourceFolder": "Source",
6 | "OutputFolder": "Package",
7 | "IconFile": "Icon.png"
8 | },
9 | "Information": {
10 | "DisplayName": "AppName 1.0.0",
11 | "Description": "Installs AppName 1.0.0",
12 | "Publisher": "AppVendor",
13 | "Notes": "AppNote"
14 | },
15 | "Program": {
16 | "InstallCommand": "",
17 | "UninstallCommand": "",
18 | "InstallExperience": "system \\ user",
19 | "DeviceRestartBehavior": "suppress \\ force \\ basedOnReturnCode \\ allow",
20 | "AllowAvailableUninstall": false \\ true
21 | },
22 | "RequirementRule": {
23 | "MinimumRequiredOperatingSystem": "W10_1809",
24 | "Architecture": "All \\ x64 \\ x86"
25 | },
26 | "CustomRequirementRule": [],
27 | "DetectionRule": [
28 | {
29 | "Type": "Registry",
30 | "DetectionMethod": "VersionComparison",
31 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\123",
32 | "ValueName": "DisplayVersion",
33 | "Operator": "notEqual \\ lessThanOrEqual \\ lessThan \\ greaterThanOrEqual \\ greaterThan \\ equal",
34 | "Value": "1.0.0",
35 | "Check32BitOn64System": "false \\ true"
36 | }
37 | ],
38 | "TenantInformation": {
39 | "Name": "tenant.onmicrosoft.com",
40 | "PromptBehavior": "Always \\ Auto \\ Never",
41 | "ApplicationID": "d1ddf0e4-d672-4dae-b554-9d5bdfd93547"
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "yaml.schemas": {
3 | "https://squidfunk.github.io/mkdocs-material/schema.json": "mkdocs.yml"
4 | },
5 | "cSpell.words": [
6 | "aaronparker",
7 | "Acro",
8 | "Addin",
9 | "ALLUSER",
10 | "appjson",
11 | "Authn",
12 | "Backblaze",
13 | "CEIP",
14 | "CHROMEEXT",
15 | "codeql",
16 | "Cyberduck",
17 | "DCMUI",
18 | "desktopicon",
19 | "DESKTOPSHORTCUT",
20 | "DISABLEDESKTOPSHORTCUT",
21 | "DONOTCREATEDESKTOPSHORTCUT",
22 | "DONOTCREATETASKBARSHORTCUT",
23 | "ehthumbs",
24 | "Foregroundcolor",
25 | "Foxit",
26 | "ghaction",
27 | "googlechromestandaloneenterprise",
28 | "GPGPASSPHRASE",
29 | "gpgsign",
30 | "Greenshot",
31 | "HKEY",
32 | "installpackageswithreboot",
33 | "LAUNCHCHECKDEFAULT",
34 | "LAUNCHOUTLOOKONEXIT",
35 | "MAKEDEFAULT",
36 | "MERGETASKS",
37 | "Mimecast",
38 | "MSAL",
39 | "msedge",
40 | "Nickolaj",
41 | "NOCLOSEAPPLICATIONS",
42 | "noreboot",
43 | "NORESTARTAPPLICATIONS",
44 | "NOTINSTALLUPDATE",
45 | "packagefactory",
46 | "packagejson",
47 | "paintdotnet",
48 | "potatoqualitee",
49 | "psmodulecache",
50 | "RUNAPPLICATION",
51 | "runcode",
52 | "SARIF",
53 | "signingkey",
54 | "SSMS",
55 | "SSON",
56 | "stefanzweifel",
57 | "SUPPRESSMSGBOXES",
58 | "THUMBNAILPREVIEW",
59 | "vcredist",
60 | "VERYSILENT",
61 | "windowsdesktop",
62 | "winget",
63 | "winmsi"
64 | ]
65 | }
--------------------------------------------------------------------------------
/packages/App/LogAnalyticsSecrets/Source/Save-LogSecrets.ps1:
--------------------------------------------------------------------------------
1 | #Requires -PSEdition Desktop
2 | #Requires -RunAsAdministrator
3 | <#
4 | Encrypts secrets and saves to XML
5 | #>
6 | [CmdletBinding()]
7 | param (
8 | [System.String] $WorkspaceId = "",
9 | [System.String] $SharedKey = "",
10 | [System.String] $Path = "$Env:SystemRoot\System32\config\systemprofile\AppData\Local\key.xml"
11 | )
12 |
13 | begin {
14 | #region Restart if running in a 32-bit session
15 | if (!([System.Environment]::Is64BitProcess)) {
16 | if ([System.Environment]::Is64BitOperatingSystem) {
17 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
18 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
19 | $params = @{
20 | FilePath = $ProcessPath
21 | ArgumentList = $Arguments
22 | Wait = $True
23 | WindowStyle = "Hidden"
24 | }
25 | Start-Process @params
26 | exit 0
27 | }
28 | }
29 | #endregion
30 | }
31 |
32 | process {
33 | if (Test-Path -Path $(Split-Path -Path $Path -Parent)) {
34 | # Path exists
35 | }
36 | else {
37 | New-Item -Path $(Split-Path -Path $Path -Parent) -ItemType "Directory" -Force | Out-Null
38 | }
39 |
40 | try {
41 | [PSCustomObject]@{
42 | WorkspaceId = $(ConvertTo-SecureString -String $WorkspaceId -AsPlainText -Force)
43 | SharedKey = $(ConvertTo-SecureString -String $SharedKey -AsPlainText -Force)
44 | } | Export-Clixml -Path $Path -Force
45 | }
46 | catch {
47 | throw $_
48 | }
49 | }
50 |
51 | end {
52 | }
53 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftOneDrive/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | Get-Process -ErrorAction "SilentlyContinue" | `
27 | Where-Object { $_.Path -like "$env:ProgramFiles\Microsoft OneDrive\*" } | `
28 | Stop-Process -Force -ErrorAction "SilentlyContinue"
29 | }
30 | catch {
31 | Write-Warning -Message "Failed to stop OneDrive processes."
32 | }
33 |
34 | try {
35 | $Path = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OneDriveSetup.exe"
36 | $Command = Get-ItemProperty -Path $Path -ErrorAction "SilentlyContinue" | Select-Object -ExpandProperty "UninstallString" -First 1
37 | $Executable = ($Command -split "/")[0]
38 | $params = @{
39 | FilePath = $Executable
40 | ArgumentList = "/uninstall /allusers /quiet"
41 | NoNewWindow = $True
42 | PassThru = $True
43 | Wait = $True
44 | }
45 | $result = Start-Process @params
46 | }
47 | catch {
48 | throw $_
49 | }
50 | finally {
51 | exit $result.ExitCode
52 | }
53 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftOneDriveVDI/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | Get-Process -ErrorAction "SilentlyContinue" | `
27 | Where-Object { $_.Path -like "$env:ProgramFiles\Microsoft OneDrive\*" } | `
28 | Stop-Process -Force -ErrorAction "SilentlyContinue"
29 | }
30 | catch {
31 | Write-Warning -Message "Failed to stop OneDrive processes."
32 | }
33 |
34 | try {
35 | $Path = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OneDriveSetup.exe"
36 | $Command = Get-ItemProperty -Path $Path -ErrorAction "SilentlyContinue" | Select-Object -ExpandProperty "UninstallString" -First 1
37 | $Executable = ($Command -split "/")[0]
38 | $params = @{
39 | FilePath = $Executable
40 | ArgumentList = "/uninstall /allusers /quiet"
41 | NoNewWindow = $True
42 | PassThru = $True
43 | Wait = $True
44 | }
45 | $result = Start-Process @params
46 | }
47 | catch {
48 | throw $_
49 | }
50 | finally {
51 | exit $result.ExitCode
52 | }
53 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerToys/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | try {
26 | Get-Process -ErrorAction "SilentlyContinue" | `
27 | Where-Object { $_.Path -like "$env:ProgramFiles\PowerToys\*" } | `
28 | Stop-Process -Force -ErrorAction "SilentlyContinue"
29 | }
30 | catch {
31 | Write-Warning -Message "Failed to stop PowerToys processes."
32 | }
33 |
34 | try {
35 | $Path = "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{7f0d7424-d132-4aaf-baa9-5d7d436f0feb}"
36 | $Command = Get-ItemProperty -Path $Path -ErrorAction "SilentlyContinue" | Select-Object -ExpandProperty "QuietUninstallString" -First 1
37 | $Executable = ($Command -split "/")[0]
38 | $params = @{
39 | FilePath = $Executable
40 | ArgumentList = "/uninstall /quiet /norestart"
41 | NoNewWindow = $True
42 | PassThru = $True
43 | Wait = $True
44 | }
45 | $result = Start-Process @params
46 | }
47 | catch {
48 | throw $_
49 | }
50 | finally {
51 | exit $result.ExitCode
52 | }
53 |
--------------------------------------------------------------------------------
/packages/App/LenovoVantageService/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | try {
27 | # Get the path to Uninstall.exe
28 | $Path = "${env:ProgramFiles(x86)}\Lenovo\VantageService"
29 | $InstallDirectory = Get-ChildItem -Path $Path | Where-Object { $_.Name -match "(\d+(\.\d+){1,4})" } | `
30 | Sort-Object -Property @{ Expression = { [System.Version]$_.Name }; Descending = $true } | `
31 | Select-Object -First 1
32 | $Uninstall = [System.IO.Path]::Combine($Path, $InstallDirectory.Name, "Uninstall.exe")
33 |
34 | if (Test-Path -Path $Uninstall) {
35 | $params = @{
36 | FilePath = [System.IO.Path]::Combine($Path, $InstallDirectory.Name, "Uninstall.exe")
37 | ArgumentList = "/SILENT"
38 | NoNewWindow = $True
39 | PassThru = $True
40 | Wait = $True
41 | }
42 | $result = Start-Process @params
43 | }
44 | else {
45 | throw [System.IO.FileNotFoundException] "$Uninstall"
46 | }
47 | }
48 | catch {
49 | throw $_
50 | }
51 | finally {
52 | exit $result.ExitCode
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/LogAnalyticsSecrets/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "EXE",
5 | "SetupFile": "powershell.exe",
6 | "Version": "1.0.0",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Package.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Save Log Analytics Secrets",
13 | "Description": "Save secrets to `C:\\Windows\\System32\\config\\systemprofile\\AppData\\Local\\key.xml` for later use in Azure Log Analytics scripts.",
14 | "Publisher": "stealthpuppy",
15 | "InformationURL": "",
16 | "PrivacyURL": "",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "5feec631-688a-430c-85c0-1e9dc17995c9"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Save-LogSecrets.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Save-LogSecrets.ps1",
23 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Remove-LogSecrets.ps1",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "All"
31 | },
32 | "CustomRequirementRule": [],
33 | "DetectionRule": [
34 | {
35 | "Type": "File",
36 | "DetectionMethod": "Existence",
37 | "Path": "C:\\Windows\\System32\\config\\systemprofile\\AppData\\Local",
38 | "FileOrFolder": "key.xml",
39 | "DetectionType": "exists",
40 | "Check32BitOn64System": "false"
41 | }
42 | ],
43 | "Dependencies": [],
44 | "Supersedence": [],
45 | "Assignments": []
46 | }
47 |
--------------------------------------------------------------------------------
/packages/App/ReincubateCamo/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 |
4 | },
5 | "PackageInformation": {
6 | "SetupType": "MSI",
7 | "SetupFile": "camo-windows-latest.msi",
8 | "Version": "1.2.0.7873",
9 | "SourceFolder": "Source",
10 | "OutputFolder": "Package",
11 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Reincubate-Camo.png"
12 | },
13 | "Information": {
14 | "DisplayName": "Reincubate Camo 1.2.0.7873 x64",
15 | "Description": "Use your phone as a webcam to look amazing on video calls. Access the incredible cameras on your phone with Camo and get powerful effects and adjustments for Zoom, Meet, and more.",
16 | "Publisher": "Reincubate",
17 | "InformationURL": "https://reincubate.com/camo/",
18 | "PrivacyURL": "https://reincubate.com/about/privacy-security/",
19 | "Categories": [],
20 | "PSPackageFactoryGuid": "d6a1a200-d6ea-49df-97c7-c4023ae5a424"
21 | },
22 | "Program": {
23 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
24 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
25 | "UninstallCommand": "MsiExec.exe /X \"{163F3389-BB55-49E8-B703-03CE87A96D8A}\" /quiet",
26 | "InstallExperience": "system",
27 | "DeviceRestartBehavior": "suppress"
28 | },
29 | "RequirementRule": {
30 | "MinimumRequiredOperatingSystem": "W10_1809",
31 | "Architecture": "x64"
32 | },
33 | "CustomRequirementRule": [],
34 | "DetectionRule": [
35 | {
36 | "Type": "File",
37 | "DetectionMethod": "Version",
38 | "Path": "C:\\Program Files (x86)\\Camo Studio",
39 | "FileOrFolder": "CamoStudio.exe",
40 | "Operator": "greaterThanOrEqual",
41 | "VersionValue": "1.2.0.7873",
42 | "Check32BitOn64System": "false"
43 | }
44 | ],
45 | "Dependencies": [],
46 | "Supersedence": [],
47 | "Assignments": []
48 | }
49 |
--------------------------------------------------------------------------------
/packages/App/AppleMobileDeviceSupport/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "MSI",
5 | "SetupFile": "AppleMobileDeviceSupport64.msi",
6 | "Version": "15.6.0.32",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Apple-MobileDeviceSupport.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Apple Mobile Device Support 15.6.0.32 x64",
13 | "Description": "Installs device drivers to enable communication with iPhones and iPads.",
14 | "Publisher": "Apple",
15 | "InformationURL": "https://support.apple.com/en-au/HT201352",
16 | "PrivacyURL": "https://www.apple.com/au/legal/privacy/en-ww/",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "887f6218-b04d-4cf6-bce1-facedc4bdb7a"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "MsiExec.exe /X \"{2B3CA448-5266-480F-85FA-2FCCB3C8712C}\" /quiet",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "x64"
31 | },
32 | "CustomRequirementRule": [],
33 | "DetectionRule": [
34 | {
35 | "Type": "File",
36 | "DetectionMethod": "Version",
37 | "Path": "C:\\Program Files\\Common Files\\Apple\\Mobile Device Support",
38 | "FileOrFolder": "AppleMobileDeviceService.exe",
39 | "Operator": "greaterThanOrEqual",
40 | "VersionValue": "15.6.0.32",
41 | "Check32BitOn64System": "false"
42 | }
43 | ],
44 | "Dependencies": [],
45 | "Supersedence": [],
46 | "Assignments": []
47 | }
48 |
--------------------------------------------------------------------------------
/docs/index.md:
--------------------------------------------------------------------------------
1 | # A Package Factory for Microsoft Intune
2 |
3 | ## About
4 |
5 | **PSPackageFactory** is a fork of [IntuneWin32AppPackager](https://github.com/MSEndpointMgr/IntuneWin32AppPackager) combined with [Evergreen](https://stealthpuppy.com/evergreen) and [VcRedist](https://vcredist.com/) to create an automated packaging factory for Microsoft Intune.
6 |
7 | This package factory enables maintaining a library of applications for automatic update, packaging and import into Microsoft Intune. [`New-Win32Package.ps1`](https://github.com/aaronparker/packagefactory/blob/main/New-Win32Package.ps1) uses Evergreen and VcRedist to download the latest version of a target application before packaging and importing into Intune.
8 |
9 | Evergreen and VcRedist are used to keep the library up to date by updating `App.json` for each package via a GitHub Workflow that runs once every 24 hours. This ensures that the packaging factory is always current and will create an Intune Win32 application package using the latest available version.
10 |
11 | ## Package Framework
12 |
13 | For applications that can't be automatically updated (e.g., installers are locked behind a login, or an installer that is custom to the target environment), this packaging framework can be used as a repeatable process to package and import those applications into Intune.
14 |
15 | This is important when an application package needs to be updated for a new version of the application. Ensuring that the new package is consistent with previous versions provides consistent deployments.
16 |
17 | ## Features
18 |
19 | PSPackageFactory builds on IntuneWin32AppPackager, and adds functionality including:
20 |
21 | * Supports a library of application packages or application update packages
22 | * Automatically updates `App.json` with details of the latest application version
23 | * Supports icons available over HTTPS - the icon will be downloaded at packaging time
24 | * Supports additional Win32 application package properties
25 | * Adds package properties to enable identification of the same application across multiple versions
26 |
--------------------------------------------------------------------------------
/packages/App/LenovoVantageService/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "EXE",
5 | "SetupFile": "Lenovo.Vantage.ServiceSetup.exe",
6 | "Version": "3.13.25.0",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Lenovo-Vantage.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Lenovo.Vantage.ServiceSetup 3.13.25.0",
13 | "Description": "Lenovo Vantage Service required for the Lenovo Vantage app. Evergreen URL is here: https://filedownload.lenovo.com/enm/vantage30/service/Lenovo.Vantage.ServiceSetup.exe.",
14 | "Publisher": "Lenovo",
15 | "InformationURL": "https://apps.microsoft.com/store/detail/lenovo-vantage/9WZDNCRFJ4MV",
16 | "PrivacyURL": "https://tun-c-hybris.lenovo.com/us/en/privacy/",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "3cf78957-f99d-41a5-8cff-e1e84eff588b"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "x64"
31 | },
32 | "CustomRequirementRule": [],
33 | "DetectionRule": [
34 | {
35 | "Type": "Script",
36 | "ScriptFile": "detection.ps1",
37 | "EnforceSignatureCheck": "false",
38 | "RunAs32Bit": "false"
39 | }
40 | ],
41 | "Dependencies": [],
42 | "Supersedence": [],
43 | "Assignments": []
44 | }
45 |
--------------------------------------------------------------------------------
/packages/App/LenovoThinkPadHotkey/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "EXE",
5 | "SetupFile": "r18vu48w.exe",
6 | "Version": "10.6.5.2",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-Teams.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Lenovo ThinkPad Hotkey Features Integration Package",
13 | "Description": "This software enables F1-F12 special keys and buttons on your computer. For example, when the microphone mute key or button is pressed, the microphone state switches between mute and unmute.",
14 | "Publisher": "Lenovo",
15 | "InformationURL": "https://support.lenovo.com/au/en/downloads/ds543947-hotkey-features-integration-for-windows-10-64-bit-thinkpad",
16 | "PrivacyURL": "https://www.lenovo.com/us/en/privacy/",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "88b71b22-859d-47a8-8514-57edc2e6623d"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "x64"
31 | },
32 | "DetectionRule": [
33 | {
34 | "Type": "File",
35 | "DetectionMethod": "Version",
36 | "Path": "C:\\Program Files\\Lenovo\\HOTKEY",
37 | "FileOrFolder": "setapps.exe",
38 | "Operator": "greaterThanOrEqual",
39 | "VersionValue": "1.0.5.0",
40 | "Check32BitOn64System": "false"
41 | }
42 | ],
43 | "Dependencies": [],
44 | "Supersedence": [],
45 | "Assignments": []
46 | }
47 |
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDCMUIVDI/Source/Install.json:
--------------------------------------------------------------------------------
1 | {
2 | "PackageInformation": {
3 | "SetupType": "EXE",
4 | "SetupFile": "AcroRdrDCx642500120997_MUI.exe",
5 | "Version": "25.001.20997"
6 | },
7 | "LogPath": "C:\\ProgramData\\Microsoft\\IntuneManagementExtension\\Logs",
8 | "InstallTasks": {
9 | "ArgumentList": "/sALL /rps /l /msi TRANSFORMS=\"#PWD\\VDI-enUS.mst\" EULA_ACCEPT=YES ENABLE_CHROMEEXT=0 DISABLE_BROWSER_INTEGRATION=1 ENABLE_OPTIMIZATION=YES ADD_THUMBNAILPREVIEW=0 DISABLEDESKTOPSHORTCUT=1 /log \"#LogPath\\#LogName.log\""
10 | },
11 | "PostInstall": {
12 | "Remove": [
13 | "C:\\Users\\Public\\Desktop\\Adobe Acrobat.lnk"
14 | ],
15 | "CopyFile": [],
16 | "Run": [
17 | "Get-Service -Name \"AdobeARMservice\" -ErrorAction \"SilentlyContinue\" | Stop-Service -ErrorAction \"SilentlyContinue\"",
18 | "Get-Service -Name \"AdobeARMservice\" -ErrorAction \"SilentlyContinue\" | Set-Service -StartupType \"Disabled\" -ErrorAction \"SilentlyContinue\"",
19 | "Get-ScheduledTask \"Adobe Acrobat Update Task*\" | Unregister-ScheduledTask -Confirm:$False -ErrorAction \"SilentlyContinue\"",
20 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bIsSCReducedModeEnforcedEx\" /d 1 /t \"REG_DWORD\" /f | Out-Null",
21 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\\cIPM\" /v \"bDontShowMsgWhenViewingDoc\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
22 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bAcroSuppressUpsell\" /d 1 /t \"REG_DWORD\" /f | Out-Null",
23 | "reg add \"HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown\" /v \"bUpdater\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
24 | "reg add \"HKLM\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Reader\\{AC76BA86-7AD7-1033-7B44-AC0F074E4100}\" /v \"Mode\" /d 0 /t \"REG_DWORD\" /f | Out-Null",
25 | "reg add \"HKLM\\SOFTWARE\\Adobe\\Adobe Acrobat\\DC\\Installer\" /v \"DisableMaintenance\" /d 1 /t \"REG_DWORD\" /f | Out-Null"
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/packages/App/RemoteDisplayAnalyzer/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "RemoteDisplayAnalyzer",
4 | "Filter": "Get-EvergreenApp -Name \"RDAnalyzer\" | Select-Object -First 1",
5 | "Title": "Remote Display Analyzer",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "RemoteDisplayAnalyzer.exe",
12 | "Version": "2503.079.1",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Display.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Remote Display Analyzer 2503.079.1 x86",
19 | "Description": "The easiest tool to analyze and change display protocol settings on the fly.",
20 | "Publisher": "Bram Wolfs",
21 | "InformationURL": "https://rdanalyzer.com/",
22 | "PrivacyURL": "https://rdanalyzer.com/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "85af2526-0088-4b78-969b-834ff39ace56"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\RemoteDisplayAnalyzer",
44 | "FileOrFolder": "RemoteDisplayAnalyzer.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "2503.079.1",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/Cyberduck/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "Cyberduck",
4 | "Filter": "Get-EvergreenApp -Name \"Cyberduck\"",
5 | "Title": "Cyberduck",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "Cyberduck-Installer-9.3.1.44136.exe",
12 | "Version": "9.3.1.44136",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Iterate-Cyberduck1.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Cyberduck 9.3.1.44136",
19 | "Description": "Cyberduck is a libre server and cloud storage browser for Mac and Windows with support for FTP, SFTP, WebDAV, Amazon S3, OpenStack Swift, Backblaze B2, Microsoft Azure & OneDrive, Google Drive and Dropbox.",
20 | "Publisher": "iterate",
21 | "InformationURL": "https://cyberduck.io/",
22 | "PrivacyURL": "https://cyberduck.io/privacy",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "d270031c-f5c9-4e20-9d78-f475e28ac22c"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "msiexec.exe /X \"{8FF1F756-1F7C-41C1-880E-B03218DFDD72}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Cyberduck",
44 | "FileOrFolder": "Cyberduck.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "9.3.1.44136",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/ImageGlass/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "ImageGlass",
4 | "Filter": "Get-EvergreenApp -Name \"ImageGlass\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.Uri -match \"x64.msi$\" } | Select-Object -First 1",
5 | "Title": "ImageGlass",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "ImageGlass_9.4.0.1120_x64.msi",
12 | "Version": "9.4.0.1120",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/ImageGlass.png"
16 | },
17 | "Information": {
18 | "DisplayName": "ImageGlass 9.4.0.1120 x64",
19 | "Description": "Free - Open Source Image Viewer. A simple-to-use program that comes packed with basic functions and a nice minimal modern user interface.",
20 | "Publisher": "Dương Diệu Pháp",
21 | "InformationURL": "https://imageglass.org/",
22 | "PrivacyURL": "https://imageglass.org/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "dffc288c-a3c7-4319-9306-4b1e77f37238"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{15872342-C9E9-4C65-9586-35B4EFDB806B}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\ImageGlass",
44 | "FileOrFolder": "ImageGlass.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "9.4.0.1120",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/ZoomRooms/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "Zoom Rooms",
4 | "Filter": "Get-EvergreenApp -Name \"Zoom\" | Where-Object { $_.Platform -eq \"Rooms\" -and $_.Type -eq \"msi\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Zoom Meetings Client",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "zoomrooms-6.6.10.6938-x64.msi",
12 | "Version": "6.6.10.6938",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/ZoomRooms.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Zoom Meetings Client 6.6.10.6938 x64",
19 | "Description": "Conference rooms that make it easy to run or join video meetings with a tap of a button.",
20 | "Publisher": "Zoom",
21 | "InformationURL": "https://explore.zoom.us/en/products/zoom-rooms/",
22 | "PrivacyURL": "https://explore.zoom.us/privacy",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "a918abe7-620c-438f-b9ee-000383ad5f9e"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\ZoomRooms\\bin",
44 | "FileOrFolder": "ZoomRooms.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "6.6.10.6938",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerToys/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftPowerToys",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftPowerToys\" | Where-Object { $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Microsoft PowerToys",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "PowerToysSetup-0.96.1-x64.exe",
12 | "Version": "0.96.1",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/microsoft/PowerToys/raw/v0.58.0/installer/MSIX/Images/logo.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft PowerToys 0.96.1 x64",
19 | "Description": "Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://aka.ms/powertoys-docs",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "3c006ea7-a6e8-4ef4-8364-c93bd9bedb99"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\PowerToys",
44 | "FileOrFolder": "PowerToys.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "0.96.1",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/ZoomMeetings/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "Zoom Meetings",
4 | "Filter": "Get-EvergreenApp -Name \"Zoom\" | Where-Object { $_.Platform -eq \"Desktop\" -and $_.Type -eq \"msi\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Zoom Meetings Client",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "ZoomInstallerFull.msi",
12 | "Version": "6.7.0.24657",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Zoom.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Zoom Meetings Client 6.7.0.24657 x64",
19 | "Description": "Simplified video conferencing and messaging across any device. Phone, Meetings, Chat, Whiteboard and more for your desktop.",
20 | "Publisher": "Zoom",
21 | "InformationURL": "https://explore.zoom.us/en/products/meetings/",
22 | "PrivacyURL": "https://explore.zoom.us/privacy",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "b964ee87-b4dd-40f1-845b-3776a5ea79de"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Zoom\\bin",
44 | "FileOrFolder": "Zoom.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "6.7.0.24657",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/PuTTY/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "PuTTY",
4 | "Filter": "Get-EvergreenApp -Name \"PuTTY\" -ErrorAction \"SilentlyContinue\" -WarningAction \"SilentlyContinue\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.Type -eq \"msi\" }",
5 | "Title": "PuTTY",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "putty-64bit-0.83-installer.msi",
12 | "Version": "0.83",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/NotepadPP.png"
16 | },
17 | "Information": {
18 | "DisplayName": "PuTTY 0.83 x64",
19 | "Description": "PuTTY is an SSH and telnet client, developed originally by Simon Tatham for the Windows platform. PuTTY is open source software that is available with source code and is developed and supported by a group of volunteers.",
20 | "Publisher": "Simon Tatham",
21 | "InformationURL": "https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html",
22 | "PrivacyURL": "",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "15b9121c-d5a3-4f32-b60a-4199634b5a12"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{DDC95F26-92B1-4546-9678-5DC68DF76BA0}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\PuTTY",
44 | "FileOrFolder": "putty.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "0.83",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/FoxitReader/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "FoxitReader",
4 | "Filter": "Get-EvergreenApp -Name \"FoxitReader\" -ErrorAction \"SilentlyContinue\" | Where-Object { $_.Language -eq \"English\" } | Select-Object -First 1",
5 | "Title": "Foxit PDF Reader",
6 | "Language": "en-US",
7 | "Architecture": "x86"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "FoxitPDFReader20251_enu_Setup.msi",
12 | "Version": "2025.2.0.33046",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/FoxitReader.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Foxit PDF Reader 2025.2.0.33046",
19 | "Description": "View, annotate, form fill, and sign PDF across desktop, mobile, and web - no matter if you're at the office, home, or on the go.",
20 | "Publisher": "Foxit Software Inc.",
21 | "InformationURL": "https://www.foxit.com/pdf-reader/",
22 | "PrivacyURL": "https://www.foxit.com/company/privacy-policy.html",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "f0c70a2c-6616-4ec3-a203-895e0f15d18a"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{F398C64A-E282-11EC-8A9F-54BF64A63C26}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "All"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files (x86)\\Foxit Software\\Foxit PDF Reader",
44 | "FileOrFolder": "FoxitPDFReader.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "2025.2.0.33046",
47 | "Check32BitOn64System": "true"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/VideoLanVlcPlayer/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "VideoLanVlcPlayer",
4 | "Filter": "Get-EvergreenApp -Name \"VideoLanVlcPlayer\" -ErrorAction \"SilentlyContinue\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.Type -eq \"MSI\" } | Select-Object -First 1",
5 | "Title": "VideoLAN VLC media player",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "vlc-3.0.20-win64.msi",
12 | "Version": "3.0.20",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/VLC.png"
16 | },
17 | "Information": {
18 | "DisplayName": "VideoLAN VLC media player 3.0.20 x64",
19 | "Description": "VLC is a free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVDs, Audio CDs, VCDs, and various streaming protocols.",
20 | "Publisher": "VideoLAN",
21 | "InformationURL": "https://www.videolan.org/vlc/features.html",
22 | "PrivacyURL": "https://www.videolan.org/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "f0cb1af5-7fa9-4aea-9ef7-2dd543c2c5b2"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{1BB20266-7C52-4909-B075-22156F75D22C}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\VideoLAN\\VLC",
44 | "FileOrFolder": "vlc.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "3.0.20",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/PaintDotNetOfflineInstaller/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "PaintDotNetOfflineInstaller",
4 | "Filter": "Get-EvergreenApp -Name \"PaintDotNetOfflineInstaller\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.URI -match \"winmsi\" } | Select-Object -First 1",
5 | "Title": "Paint.NET",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "paint.net.5.1.11.winmsi.x64.msi",
12 | "Version": "5.1.11",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Paint.Net.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Paint.NET 5.1.11 x64",
19 | "Description": "Paint.NET is image and photo editing software for PCs that run Windows. It features an intuitive and innovative user interface with support for layers, unlimited undo, special effects, and a wide variety of useful and powerful tools.",
20 | "Publisher": "dotPDN LLC.",
21 | "InformationURL": "https://www.getpaint.net/",
22 | "PrivacyURL": "https://www.getpaint.net/privacy.html",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "8217c760-01fe-4e0e-8389-76bd2bce5620"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{E56D2CED-CCAE-4902-A559-17B452752DA5}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\paint.net",
44 | "FileOrFolder": "paintdotnet.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "5.1.11",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerShell/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftPowerShell",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftPowerShell\" | Where-Object { $_.Release -eq \"Stable\" -and $_.Architecture -eq \"x64\" -and $_.Type -eq \"exe\" }",
5 | "Title": "Microsoft PowerShell",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "PowerShell-7.5.3-win-x64.exe",
12 | "Version": "7.5.3",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-PowerShellCore.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft PowerShell 7.5.3 x64",
19 | "Description": "PowerShell is a cross-platform task automation solution made up of a command-line shell, a scripting language, and a configuration management framework. PowerShell runs on Windows, Linux, and macOS.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://aka.ms/PowerShell-docs",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "27e8b145-6434-44b7-a1d7-90172bec588a"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\PowerShell\\7",
44 | "FileOrFolder": "pwsh.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "7.5.3",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MozillaFirefox/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MozillaFirefox",
4 | "Filter": "Get-EvergreenApp -Name \"MozillaFirefox\" -ErrorAction \"SilentlyContinue\" -WarningAction \"SilentlyContinue\" | Where-Object { $_.Channel -eq \"Current\" -and $_.Architecture -eq \"x64\" -and $_.Type -eq \"msi\" -and $_.Language -eq \"en-GB\" }",
5 | "Title": "Mozilla Firefox",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "Firefox Setup 140.0.4.msi",
12 | "Version": "140.0.4",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Mozilla-Firefox.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Mozilla Firefox 140.0.4 x64",
19 | "Description": "Get the browser that protects what's important. No shady privacy policies or back doors for advertisers. Just a lightning fast browser that doesn't sell you out.",
20 | "Publisher": "Mozilla",
21 | "InformationURL": "https://www.mozilla.org/firefox/new/",
22 | "PrivacyURL": "https://www.mozilla.org/en-US/privacy/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "f06d95c9-d407-4852-a0b8-0fdb1db80a50"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "C:\\Program Files\\Mozilla Firefox\\uninstall\\helper.exe /S",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Mozilla Firefox",
44 | "FileOrFolder": "firefox.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "140.0.4",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MimecastOutlookx86/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "MSI",
5 | "SetupFile": "Mimecast for outlook 7.10.1.133 (x86).msi",
6 | "Version": "7.10.1.133",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Mimecast.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Mimecast for Outlook 7.10.1.133 x86",
13 | "Description": "Mimecast provides a fully integrated, cloud-based subscription service that combines solutions for email security, archiving and continuity.",
14 | "Publisher": "Mimecast",
15 | "InformationURL": "https://www.mimecast.com/content/outlook-email-management/",
16 | "PrivacyURL": "https://www.mimecast.com/company/mimecast-trust-center/gdpr-center/privacy-statement/",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "45cbaaff-a450-4ce7-b281-1ae6e0c2ec0d"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "MsiExec.exe /X \"{83F8DF4E-C625-4DCD-93A3-DE063BC32D49}\" /quiet",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "All"
31 | },
32 | "CustomRequirementRule": [
33 | {
34 | "Type": "File",
35 | "DetectionMethod": "Existence",
36 | "Path": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16",
37 | "FileOrFolder": "OUTLOOK.EXE",
38 | "DetectionType": "exists",
39 | "Check32BitOn64System": "false"
40 | }
41 | ],
42 | "DetectionRule": [
43 | {
44 | "Type": "File",
45 | "DetectionMethod": "Version",
46 | "Path": "C:\\Program Files (x86)\\Mimecast\\Mimecast Outlook Add-In",
47 | "FileOrFolder": "Mimecast.Services.Outlook.AddIn.dll",
48 | "Operator": "greaterThanOrEqual",
49 | "VersionValue": "7.10.1.133",
50 | "Check32BitOn64System": "false"
51 | }
52 | ],
53 | "Dependencies": [],
54 | "Supersedence": [],
55 | "Assignments": []
56 | }
57 |
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDC/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "AdobeAcrobatReaderDC",
4 | "Filter": "Get-EvergreenApp -Name \"AdobeAcrobatReaderDC\" | Where-Object { $_.Language -eq \"MUI\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Adobe Acrobat Reader DC",
6 | "Language": "English",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "AcroRdrDCx642500120997_MUI.exe",
12 | "Version": "25.001.20997",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Adobe-AcrobatReader.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Adobe Acrobat Reader DC 25.001.20997 x64",
19 | "Description": "Adobe Acrobat Reader is the free, trusted global standard for viewing, printing, e-signing, sharing, and annotating PDFs. View PDFs, Leave comments or annotate PDFs, Fill, e-sign, and lock your forms, Collaborate better with PDFs.",
20 | "Publisher": "Adobe",
21 | "InformationURL": "https://www.adobe.com/acrobat/pdf-reader.html",
22 | "PrivacyURL": "https://www.adobe.com/privacy.html",
23 | "FeaturedApp": false,
24 | "Categories": [],
25 | "PSPackageFactoryGuid": "a0042672-7240-4312-892e-39623320c0a3"
26 | },
27 | "Program": {
28 | "InstallTemplate": "Deploy-Application.exe -DeploymentType \"Install\" -DeployMode \"Silent\"",
29 | "InstallCommand": "Deploy-Application.exe -DeploymentType \"Install\" -DeployMode \"Silent\"",
30 | "UninstallCommand": "Deploy-Application.exe -DeploymentType \"Uninstall\" -DeployMode \"Silent\"",
31 | "InstallExperience": "system",
32 | "DeviceRestartBehavior": "suppress",
33 | "AllowAvailableUninstall": false
34 | },
35 | "RequirementRule": {
36 | "MinimumRequiredOperatingSystem": "W10_1809",
37 | "Architecture": "x64"
38 | },
39 | "CustomRequirementRule": [],
40 | "DetectionRule": [
41 | {
42 | "Type": "File",
43 | "DetectionMethod": "Version",
44 | "Path": "C:\\Program Files\\Adobe\\Acrobat DC\\Acrobat",
45 | "FileOrFolder": "Acrobat.exe",
46 | "Operator": "greaterThanOrEqual",
47 | "VersionValue": "25.001.20997",
48 | "Check32BitOn64System": "false"
49 | }
50 | ],
51 | "Dependencies": [],
52 | "Supersedence": [],
53 | "Assignments": []
54 | }
55 |
--------------------------------------------------------------------------------
/packages/App/Audacity/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "Audacity",
4 | "Filter": "Get-EvergreenApp -Name \"Audacity\" | Where-Object { $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Audacity",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "audacity-win-3.7.7-64bit.exe",
12 | "Version": "3.7.7",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Audacity.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Audacity 3.7.7 x64",
19 | "Description": "Audacity is an easy-to-use, multi-track audio editor and recorder for Windows, macOS, GNU/Linux and other operating systems.",
20 | "Publisher": "Audacity",
21 | "InformationURL": "https://www.audacityteam.org/",
22 | "PrivacyURL": "https://www.audacityteam.org/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "328af5bc-34e3-4a9e-93eb-398f594388d6"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "\"C:\\Program Files\\Audacity\\unins000.exe\" /VERYSILENT",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "basedOnReturnCode",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Audacity",
44 | "FileOrFolder": "Audacity.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "3.7.7",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllUsers",
55 | "Intent": "available",
56 | "Notification": "showAll",
57 | "EnableRestartGracePeriod": true,
58 | "RestartGracePeriod": 1440,
59 | "RestartCountDownDisplay": 15,
60 | "RestartNotificationSnooze": 240
61 | }
62 | ]
63 | }
64 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftOneDrive/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftOneDrive",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftOneDrive\" | Where-Object { $_.Architecture -eq \"AMD64\" -and $_.Ring -eq \"Production\" } | Select-Object -First 1",
5 | "Title": "Microsoft OneDrive",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "OneDriveSetup.exe",
12 | "Version": "24.078.0416.0003",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-OneDrive.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft OneDrive 24.078.0416.0003 AMD64",
19 | "Description": "With Microsoft OneDrive, you can easily and securely store and access your files from all your devices. You can work with others regardless of whether they're inside or outside your organization and terminate that sharing whenever you want.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://support.microsoft.com/en-us/onedrive",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "17d5ae82-382e-4f2f-92d9-130fec56964b"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Microsoft OneDrive",
44 | "FileOrFolder": "OneDrive.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "24.078.0416.0003",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MimecastOutlookx64/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "MSI",
5 | "SetupFile": "Mimecast for outlook 7.10.1.133 (x64).msi",
6 | "Version": "7.10.1.133",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Mimecast.png"
10 | },
11 | "Information": {
12 | "DisplayName": "Mimecast for Outlook 7.10.1.133 x64",
13 | "Description": "Mimecast provides a fully integrated, cloud-based subscription service that combines solutions for email security, archiving and continuity.",
14 | "Publisher": "Mimecast",
15 | "InformationURL": "https://www.mimecast.com/content/outlook-email-management/",
16 | "PrivacyURL": "https://www.mimecast.com/company/mimecast-trust-center/gdpr-center/privacy-statement/",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "c92fdc3e-6bb3-4cce-8955-3ce4bef2a1d8"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "MsiExec.exe /X \"{83F8DF4E-C625-4DCD-93A3-DE063BC32D49}\" /quiet /log \"C:\\ProgramData\\PackageFactory\\logs\\MimecastOutlook.log\"",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "x64"
31 | },
32 | "CustomRequirementRule": [
33 | {
34 | "Type": "File",
35 | "DetectionMethod": "Existence",
36 | "Path": "C:\\Program Files\\Microsoft Office\\root\\Office16",
37 | "FileOrFolder": "OUTLOOK.EXE",
38 | "DetectionType": "exists",
39 | "Check32BitOn64System": "false"
40 | }
41 | ],
42 | "DetectionRule": [
43 | {
44 | "Type": "File",
45 | "DetectionMethod": "Version",
46 | "Path": "C:\\Program Files\\Mimecast\\Mimecast Outlook Add-In",
47 | "FileOrFolder": "Mimecast.Services.Outlook.AddIn.dll",
48 | "Operator": "greaterThanOrEqual",
49 | "VersionValue": "7.10.1.133",
50 | "Check32BitOn64System": "false"
51 | }
52 | ],
53 | "Dependencies": [],
54 | "Supersedence": [],
55 | "Assignments": []
56 | }
57 |
--------------------------------------------------------------------------------
/packages/App/ConnectWiseControl/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {},
3 | "PackageInformation": {
4 | "SetupType": "MSI",
5 | "SetupFile": "ConnectWiseControl.ClientSetup.msi",
6 | "Version": "22.5.7881.8171",
7 | "SourceFolder": "Source",
8 | "OutputFolder": "Package",
9 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/ConnectWiseControl.png"
10 | },
11 | "Information": {
12 | "DisplayName": "ConnectWise Control agent 22.5.7881.8171 x86",
13 | "Description": "ConnectWise Control / ScreenConnect Client agent for remote control support.",
14 | "Publisher": "ConnectWise",
15 | "InformationURL": "https://docs.connectwise.com/ConnectWise_Control_Documentation/Get_started",
16 | "PrivacyURL": "https://www.connectwise.com/company/privacy-policy",
17 | "Categories": [],
18 | "PSPackageFactoryGuid": "5564fb3c-aa1d-4fe1-884b-1c63e35877e1"
19 | },
20 | "Program": {
21 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
22 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
23 | "UninstallCommand": "MsiExec.exe /X \"{CBF0B9B6-05FF-4D3A-B0EA-EDA3438E941F}\" /qn",
24 | "InstallExperience": "system",
25 | "DeviceRestartBehavior": "suppress",
26 | "AllowAvailableUninstall": false
27 | },
28 | "RequirementRule": {
29 | "MinimumRequiredOperatingSystem": "W10_1809",
30 | "Architecture": "All"
31 | },
32 | "CustomRequirementRule": [],
33 | "DetectionRule": [
34 | {
35 | "Type": "Registry",
36 | "DetectionMethod": "VersionComparison",
37 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{CBF0B9B6-05FF-4D3A-B0EA-EDA3438E941F}",
38 | "ValueName": "DisplayVersion",
39 | "Operator": "greaterThanOrEqual",
40 | "Value": "22.5.7881.8171",
41 | "Check32BitOn64System": "false"
42 | },
43 | {
44 | "Type": "File",
45 | "DetectionMethod": "Version",
46 | "Path": "C:\\Program Files (x86)\\ScreenConnect Client (1a5d6cc5d5f07e3e)",
47 | "FileOrFolder": "ScreenConnect.ClientService.exe",
48 | "Operator": "greaterThanOrEqual",
49 | "VersionValue": "22.5.7881.8171",
50 | "Check32BitOn64System": "false"
51 | }
52 | ],
53 | "Dependencies": [],
54 | "Supersedence": [],
55 | "Assignments": []
56 | }
57 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftWvdRemoteDesktop/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftWvdRemoteDesktop",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftWvdRemoteDesktop\" | Where-Object { $_.Channel -eq \"Public\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Microsoft Remote Desktop",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "RemoteDesktop_1.2.6873.0_x64.msi",
12 | "Version": "1.2.6873.0",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-RemoteDesktop2.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft Remote Desktop 1.2.6873.0 x64",
19 | "Description": "The Microsoft Remote Desktop client is used to connect to Azure Virtual Desktop to access your desktops and applications. This article shows you how to connect to Azure Virtual Desktop with the Remote Desktop client for Windows.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://learn.microsoft.com/en-us/azure/virtual-desktop/users/connect-windows",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "a32b45f9-05dd-4f55-9992-118c40b3404d"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "msiexec.exe /X \"{435AF226-840F-49ED-8F03-4B1356F7740F}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Remote Desktop",
44 | "FileOrFolder": "msrdc.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "1.2.6873.0",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/docs/pipeline.md:
--------------------------------------------------------------------------------
1 | # Use in a Pipeline
2 |
3 | Using the package factory in a pipeline requires a Windows runner. The pipeline will run the same process as if the factory was running on a local machine.
4 |
5 | ## PowerShell Modules
6 |
7 | The factory requires that the **MSAL.PS**, **IntuneWin32App**, **Evergreen**, **VcRedist** PowerShell modules are installed. Install with the following command:
8 |
9 | ```powershell
10 | Install-Module -Name "MSAL.PS", "IntuneWin32App", "Evergreen", "VcRedist" -Force -SkipPublisherCheck
11 | ```
12 |
13 | ## Authentication
14 |
15 | `Connect-MSIntuneGraph` can authenticate to an app registration by passing the tenant ID, application (or client) ID and the client secret:
16 |
17 | ```powershell
18 | $params = @{
19 | TenantId = "$env:TENANT_ID"
20 | ClientId = "$env:CLIENT_ID"
21 | ClientSecret = "$env:CLIENT_SECRET"
22 | }
23 | Connect-MSIntuneGraph @params
24 | ```
25 |
26 | ## Create an Application Package
27 |
28 | `New-Win32Package.ps1` is used to read the application package manifest, create the Intune Win32 package and call `Create-Win32App.ps1` to import the package into the target Intune tenant.
29 |
30 | Here's an example with importing Adobe Acrobat Reader DC and Citrix Workspace app into your Intune tenant by passing an array of package names to the `-Application` parameter:
31 |
32 | ```powershell
33 | $params = @{
34 | Path = "E:\projects\packagefactory\packages"
35 | Application = "AdobeAcrobatReaderDCMUI", "CitrixWorkspaceApp"
36 | Type = "App"
37 | WorkingPath = "E:\projects\packagefactory\output"
38 | Import = $true
39 | }
40 | .\New-Win32Package.ps1 @params
41 | ```
42 |
43 | ## Create an Update Package
44 |
45 | `New-Win32Package.ps1` can also create update packages where an application update is defined. The usage is exactly the same (because the update package logic is stored in the `App.json` for that package) - pass the package name to the `-Application` parameter, but also specify **Update** for the `-Type` parameter.
46 |
47 | Here's an example with importing a Adobe Acrobat Reader DC update into your Intune tenant:
48 |
49 | ```powershell
50 | Set-Location -Path "E:\projects\packagefactory"
51 | $params = @{
52 | Path = "E:\projects\packagefactory\packages"
53 | Application = "AdobeAcrobatReaderDCMUIx64"
54 | Type = "Update"
55 | WorkingPath = "E:\projects\packagefactory\output"
56 | Import = $true
57 | }
58 | .\New-Win32Package.ps1 @params
59 | ```
60 |
--------------------------------------------------------------------------------
/packages/App/Notepad++/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "NotepadPlusPlus",
4 | "Filter": "Get-EvergreenApp -Name \"NotepadPlusPlus\" -ErrorAction \"SilentlyContinue\" -WarningAction \"SilentlyContinue\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.Type -eq \"exe\" }",
5 | "Title": "Notepad++",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "npp.8.8.9.Installer.x64.exe",
12 | "Version": "8.8.9",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/NotepadPP.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Notepad++ 8.8.9 x64",
19 | "Description": "Notepad++ is a free source code editor and Notepad replacement that supports several languages. By optimizing as many routines as possible without losing user friendliness, Notepad++ is trying to reduce the world carbon dioxide emissions. When using less CPU power, the PC can throttle down and reduce power consumption, resulting in a greener environment.",
20 | "Publisher": "Don Ho",
21 | "InformationURL": "https://notepad-plus-plus.org/",
22 | "PrivacyURL": "https://www.mozilla.org/en-US/privacy/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "5ba4f47a-db61-4646-879c-88ee8fdb2c74"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Notepad++",
44 | "FileOrFolder": "Notepad++.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "8.8.9",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/docs/setup.md:
--------------------------------------------------------------------------------
1 | # Set Up the Packaging Factory
2 |
3 | Running the packaging factory locally requires a support version of Windows because the [Microsoft Win32 Content Prep Tool](https://learn.microsoft.com/en-us/mem/intune/apps/apps-win32-prepare) runs on Windows only. Additionally, the packaging factory has only been tested on Windows PowerShell. It may run on PowerShell 7; however, it is not actively tested on that version of PowerShell.
4 |
5 | ## Install the required PowerShell modules
6 |
7 | Install the required PowerShell modules. **IntuneWin32** (which depends on **MSAL.PS**), **Evergreen** and **VcRedist** are required modules.
8 |
9 | ```powershell
10 | Install-Module -Name IntuneWin32App, Evergreen, VcRedist, MSAL.PS
11 | ```
12 |
13 | It is always worth ensuring you are running the latest version of each module:
14 |
15 | ```powershell
16 | Update-Module -Name IntuneWin32App, Evergreen, VcRedist, MSAL.PS
17 | Import-Module -Name IntuneWin32App, Evergreen, VcRedist, MSAL.PS -Force
18 | ```
19 |
20 | ## Download the Packaging Factory
21 |
22 | Clone the packaging factory - you can download the zip file containing the entire repository; however, to ensure your local copy can be updated with changes to the source repository, it will be easier to clone the repository with git [git](https://git-scm.com/).
23 |
24 | Git can be installed easily with winget:
25 |
26 | ```cmd
27 | winget install Git.Git
28 | ```
29 |
30 | With git installed, you can clone the repository into a target directory (e.g. `E:\projects\packagefactory`) with the following commands:
31 |
32 | ```powershell
33 | New-Item -Path "E:\projects" -ItemType "Directory"
34 | Set-Location -Path "E:\projects"
35 | git clone https://github.com/aaronparker/packagefactory.git
36 | ```
37 |
38 | ## Keeping in sync with the Package Factory
39 |
40 | After creating application packages with the package factory, you will have additional files downloaded including icons and installers in your cloned directory. To reset the package factory back to defaults and synchronise your copy with the source repository, you can reset your local changes and download new changes with:
41 |
42 | ```bash
43 | git clean -f
44 | git restore .
45 | git pull
46 | ```
47 |
48 | ## GUI Tools
49 |
50 | If you aren't comfortable with the command-line instructions above, there are GUI-based git tools available that can simplify cloning the repository and managing your local copy. We recommend using:
51 |
52 | * [GitHub Desktop](https://desktop.github.com/); or
53 | * [Fork](https://git-fork.com/)
54 |
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDCMUIVDI/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "AdobeAcrobatReaderDC",
4 | "Filter": "Get-EvergreenApp -Name \"AdobeAcrobatReaderDC\" | Where-Object { $_.Language -eq \"MUI\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Adobe Acrobat Reader DC (VDI install)",
6 | "PrePackageCmd": " -sfx_o\"#Path\" -sfx_ne",
7 | "Language": "English",
8 | "Architecture": "x64"
9 | },
10 | "PackageInformation": {
11 | "SetupType": "EXE",
12 | "SetupFile": "AcroRdrDCx642500120997_MUI.exe",
13 | "Version": "25.001.20997",
14 | "SourceFolder": "Source",
15 | "OutputFolder": "Package",
16 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Adobe-AcrobatReader.png"
17 | },
18 | "Information": {
19 | "DisplayName": "Adobe Acrobat Reader DC (VDI install) 25.001.20997 x64",
20 | "Description": "Adobe Acrobat Reader is the free, trusted global standard for viewing, printing, e-signing, sharing, and annotating PDFs. View PDFs, Leave comments or annotate PDFs, Fill, e-sign, and lock your forms, Collaborate better with PDFs.",
21 | "Publisher": "Adobe",
22 | "InformationURL": "https://www.adobe.com/acrobat/pdf-reader.html",
23 | "PrivacyURL": "https://www.adobe.com/privacy.html",
24 | "FeaturedApp": false,
25 | "Categories": [],
26 | "PSPackageFactoryGuid": "a0042672-7240-4312-892e-39623320c0a3"
27 | },
28 | "Program": {
29 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
30 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
31 | "UninstallCommand": "msiexec.exe /X \"{AC76BA86-1033-FF00-7760-BC15014EA700}\" /quiet",
32 | "InstallExperience": "system",
33 | "DeviceRestartBehavior": "suppress",
34 | "AllowAvailableUninstall": false
35 | },
36 | "RequirementRule": {
37 | "MinimumRequiredOperatingSystem": "W10_1809",
38 | "Architecture": "x64"
39 | },
40 | "CustomRequirementRule": [],
41 | "DetectionRule": [
42 | {
43 | "Type": "File",
44 | "DetectionMethod": "Version",
45 | "Path": "C:\\Program Files\\Adobe\\Acrobat DC\\Acrobat",
46 | "FileOrFolder": "Acrobat.exe",
47 | "Operator": "greaterThanOrEqual",
48 | "VersionValue": "25.001.20997",
49 | "Check32BitOn64System": "false"
50 | }
51 | ],
52 | "Dependencies": [],
53 | "Supersedence": [],
54 | "Assignments": []
55 | }
56 |
--------------------------------------------------------------------------------
/packages/App/Greenshot/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "Greenshot",
4 | "Filter": "Get-EvergreenApp -Name \"Greenshot\" | Where-Object { $_.Architecture -eq \"x86\" -and $_.Uri -match \"Greenshot-INSTALLER-\" } | Select-Object -First 1",
5 | "Title": "Greenshot",
6 | "Language": "en-US",
7 | "Architecture": "x86"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "Greenshot-INSTALLER-1.3.304-RELEASE.exe",
12 | "Version": "1.3.304",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Greenshot.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Greenshot 1.3.304 x86",
19 | "Description": "Greenshot is a light-weight screenshot software tool for Windows with the following key features:\n\n* Quickly create screenshots of a selected region, window or full screen\n* Easily annotate, highlight or obfuscate parts of the screenshot\n* Export the screenshot in various ways: save to file, send to printer, copy to clipboard, attach to e-mail, send Office programs or upload to photo sites",
20 | "Publisher": "Greenshot",
21 | "InformationURL": "https://getgreenshot.org/",
22 | "PrivacyURL": "https://getgreenshot.org/privacy-policy/",
23 | "FeaturedApp": false,
24 | "Categories": [],
25 | "PSPackageFactoryGuid": "11613277-9517-41c1-81a7-55e2820b8910"
26 | },
27 | "Program": {
28 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
30 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
31 | "InstallExperience": "system",
32 | "DeviceRestartBehavior": "suppress",
33 | "AllowAvailableUninstall": false
34 | },
35 | "RequirementRule": {
36 | "MinimumRequiredOperatingSystem": "W10_1809",
37 | "Architecture": "x64"
38 | },
39 | "CustomRequirementRule": [],
40 | "DetectionRule": [
41 | {
42 | "Type": "File",
43 | "DetectionMethod": "Version",
44 | "Path": "C:\\Program Files\\Greenshot",
45 | "FileOrFolder": "Greenshot.exe",
46 | "Operator": "greaterThanOrEqual",
47 | "VersionValue": "1.3.304",
48 | "Check32BitOn64System": "false"
49 | }
50 | ],
51 | "Dependencies": [],
52 | "Supersedence": [],
53 | "Assignments": []
54 | }
55 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftAzurePipelinesAgent/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | #Requires -PSEdition Desktop
2 | #Requires -RunAsAdministrator
3 | <#
4 | Uses Evergreen to download and install Azure Devops Pipeline agent
5 | #>
6 | [CmdletBinding()]
7 | param (
8 | [System.String] $Path = "$Env:SystemDrive\agents",
9 | [System.String] $KeyFile = "$Env:SystemRoot\System32\config\systemprofile\AppData\Local\DevOpsKey.xml"
10 | )
11 |
12 | #region Restart if running in a 32-bit session
13 | if (!([System.Environment]::Is64BitProcess)) {
14 | if ([System.Environment]::Is64BitOperatingSystem) {
15 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
16 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
17 | $params = @{
18 | FilePath = $ProcessPath
19 | ArgumentList = $Arguments
20 | Wait = $True
21 | WindowStyle = "Hidden"
22 | }
23 | Start-Process @params
24 | exit 0
25 | }
26 | }
27 | #endregion
28 |
29 | #region Read secrets file
30 | if (Test-Path -Path $KeyFile) {
31 | continue
32 | }
33 | else {
34 | throw [System.IO.FileNotFoundException]::new("$KeyFile not found.")
35 | }
36 | try {
37 | $Secrets = Import-Clixml -Path $KeyFile
38 | }
39 | catch {
40 | throw $_
41 | }
42 |
43 | # Check that the required variables have been set in the key file
44 | foreach ($Value in "DevOpsUser", "DevOpsPat") {
45 | if ($null -eq $Secrets.$Value) { throw "$Value is $null" }
46 | }
47 | #endregion
48 |
49 | #region Script logic
50 | try {
51 | Push-Location -Path $Path
52 | $params = @{
53 | FilePath = "$Path\config.cmd"
54 | ArgumentList = "remove --unattended --auth pat --token `"$([System.Runtime.InteropServices.Marshal]::PtrToStringAuto([System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($Secrets.DevOpsPat)))`""
55 | Wait = $true
56 | NoNewWindow = $true
57 | PassThru = $true
58 | }
59 | Start-Process @params
60 | }
61 | catch {
62 | throw $_
63 | }
64 |
65 | # Remove the C:\agents directory and the local user account used by the agent service
66 | Remove-Item -Path $Path -Recurse -Force -ErrorAction "SilentlyContinue"
67 | Remove-LocalUser -Name $([System.Runtime.InteropServices.Marshal]::PtrToStringAuto([System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($Secrets.DevOpsUser))) -Confirm:$false -ErrorAction "SilentlyContinue"
68 | #endregion
69 |
--------------------------------------------------------------------------------
/packages/App/ZoomRooms/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | #region Functions
26 | function Get-InstalledSoftware {
27 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
28 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
29 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
30 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
31 | ForEach-Object {
32 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
33 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
34 | Where-Object { $_.SystemComponent -ne 1 } | `
35 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
36 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
37 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
38 | Sort-Object -Property "Name", "Publisher"
39 | }
40 | }
41 | #endregion
42 |
43 | try {
44 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "Zoom*" }
45 | $params = @{
46 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
47 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
48 | NoNewWindow = $true
49 | PassThru = $true
50 | Wait = $true
51 | ErrorAction = "Continue"
52 | }
53 | $result = Start-Process @params
54 | }
55 | catch {
56 | throw $_
57 | }
58 | finally {
59 | exit $result.ExitCode
60 | }
61 |
--------------------------------------------------------------------------------
/packages/App/ZoomMeetings/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | #region Functions
26 | function Get-InstalledSoftware {
27 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
28 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
29 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
30 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
31 | ForEach-Object {
32 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
33 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
34 | Where-Object { $_.SystemComponent -ne 1 } | `
35 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
36 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
37 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
38 | Sort-Object -Property "Name", "Publisher"
39 | }
40 | }
41 | #endregion
42 |
43 | try {
44 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "Zoom*" }
45 | $params = @{
46 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
47 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
48 | NoNewWindow = $true
49 | PassThru = $true
50 | Wait = $true
51 | ErrorAction = "Continue"
52 | }
53 | $result = Start-Process @params
54 | }
55 | catch {
56 | throw $_
57 | }
58 | finally {
59 | exit $result.ExitCode
60 | }
61 |
--------------------------------------------------------------------------------
/packages/Update/ZoomMeetings/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | #region Functions
26 | function Get-InstalledSoftware {
27 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
28 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
29 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
30 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
31 | ForEach-Object {
32 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
33 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
34 | Where-Object { $_.SystemComponent -ne 1 } | `
35 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
36 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
37 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
38 | Sort-Object -Property "Name", "Publisher"
39 | }
40 | }
41 | #endregion
42 |
43 | try {
44 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "Zoom*" }
45 | $params = @{
46 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
47 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
48 | NoNewWindow = $true
49 | PassThru = $true
50 | Wait = $true
51 | ErrorAction = "Continue"
52 | }
53 | $result = Start-Process @params
54 | }
55 | catch {
56 | throw $_
57 | }
58 | finally {
59 | exit $result.ExitCode
60 | }
61 |
--------------------------------------------------------------------------------
/packages/App/GoogleChrome/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 |
14 | $params = @{
15 | FilePath = $ProcessPath
16 | ArgumentList = $Arguments
17 | Wait = $True
18 | WindowStyle = "Hidden"
19 | }
20 | Start-Process @params
21 | exit 0
22 | }
23 | }
24 | #endregion
25 |
26 | #region Functions
27 | function Get-InstalledSoftware {
28 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
29 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
30 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
31 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
32 | ForEach-Object {
33 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
34 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
35 | Where-Object { $_.SystemComponent -ne 1 } | `
36 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
37 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
38 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
39 | Sort-Object -Property "Name", "Publisher"
40 | }
41 | }
42 | #endregion
43 |
44 | try {
45 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "Google Chrome*" }
46 | $params = @{
47 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
48 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
49 | NoNewWindow = $true
50 | PassThru = $true
51 | Wait = $true
52 | ErrorAction = "Continue"
53 | }
54 | $result = Start-Process @params
55 | }
56 | catch {
57 | throw $_
58 | }
59 | finally {
60 | exit $result.ExitCode
61 | }
62 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftSsmsEnu/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftSsmsEnu",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftSsms\" | Where-Object { $_.Language -eq \"English\" } | Select-Object -First 1",
5 | "Title": "Microsoft SQL Server Management Studio",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "SSMS-Setup-ENU.exe",
12 | "Version": "20.1.10.0",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-SSMS.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft SQL Server Management Studio 20.1.10.0",
19 | "Description": "SQL Server Management Studio (SSMS) is an integrated environment for managing any SQL infrastructure, from SQL Server to Azure SQL Database. SSMS provides tools to configure, monitor, and administer instances of SQL Server and databases. Use SSMS to deploy, monitor, and upgrade the data-tier components used by your applications, and build queries and scripts.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://docs.microsoft.com/en-au/sql/ssms/download-sql-server-management-studio-ssms",
22 | "PrivacyURL": "https://go.microsoft.com/fwlink/?LinkId=521839",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "73c06042-b651-4074-9cce-1dc28bf5cb4e"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "msiexec.exe /X \"{03FFD0DE-C109-45D1-9C19-C010A02CFC73}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files (x86)\\Microsoft SQL Server Management Studio 18\\Common7\\IDE",
44 | "FileOrFolder": "Ssms.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "20.1.10.0",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftPowerShell/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | #region Functions
26 | function Get-InstalledSoftware {
27 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
28 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
29 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
30 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
31 | ForEach-Object {
32 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
33 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
34 | Where-Object { $_.SystemComponent -ne 1 } | `
35 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
36 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
37 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
38 | Sort-Object -Property "Name", "Publisher"
39 | }
40 | }
41 | #endregion
42 |
43 | try {
44 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "PowerShell 7-x64*" }
45 | $params = @{
46 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
47 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
48 | NoNewWindow = $true
49 | PassThru = $true
50 | Wait = $true
51 | ErrorAction = "Continue"
52 | }
53 | $result = Start-Process @params
54 | }
55 | catch {
56 | throw $_
57 | }
58 | finally {
59 | exit $result.ExitCode
60 | }
61 |
--------------------------------------------------------------------------------
/packages/App/LenovoThinkPadHotkey/Source/Uninstall.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .SYNOPSIS
3 | Uninstalls the application
4 | #>
5 | [CmdletBinding()]
6 | param ()
7 |
8 | #region Restart if running in a 32-bit session
9 | if (!([System.Environment]::Is64BitProcess)) {
10 | if ([System.Environment]::Is64BitOperatingSystem) {
11 | $Arguments = "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"$($MyInvocation.MyCommand.Definition)`""
12 | $ProcessPath = $(Join-Path -Path $Env:SystemRoot -ChildPath "\Sysnative\WindowsPowerShell\v1.0\powershell.exe")
13 | $params = @{
14 | FilePath = $ProcessPath
15 | ArgumentList = $Arguments
16 | Wait = $True
17 | WindowStyle = "Hidden"
18 | }
19 | Start-Process @params
20 | exit 0
21 | }
22 | }
23 | #endregion
24 |
25 | #region Functions
26 | function Get-InstalledSoftware {
27 | $PropertyNames = "DisplayName", "DisplayVersion", "Publisher", "UninstallString", "PSPath", "WindowsInstaller",
28 | "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize", "SystemComponent"
29 | ("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
30 | "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*") | `
31 | ForEach-Object {
32 | Get-ItemProperty -Path $_ -Name $PropertyNames -ErrorAction "SilentlyContinue" | `
33 | . { process { if ($null -ne $_.DisplayName) { $_ } } } | `
34 | Where-Object { $_.SystemComponent -ne 1 } | `
35 | Select-Object -Property @{n = "Name"; e = { $_.DisplayName } }, @{n = "Version"; e = { $_.DisplayVersion } }, "Publisher",
36 | "UninstallString", @{n = "RegistryPath"; e = { $_.PSPath -replace "Microsoft.PowerShell.Core\\Registry::", "" } },
37 | "PSChildName", "WindowsInstaller", "InstallDate", "InstallSource", "HelpLink", "Language", "EstimatedSize" | `
38 | Sort-Object -Property "Name", "Publisher"
39 | }
40 | }
41 | #endregion
42 |
43 | try {
44 | $Uninstall = Get-InstalledSoftware | Where-Object { $_.Name -match "Lenovo ThinkPad Hotkey Features Integration Package*" }
45 | $params = @{
46 | FilePath = "$Env:SystemRoot\System32\msiexec.exe"
47 | ArgumentList = "/uninstall `"$($Uninstall.PSChildName)`" /quiet /norestart"
48 | NoNewWindow = $true
49 | PassThru = $true
50 | Wait = $true
51 | ErrorAction = "Continue"
52 | }
53 | $result = Start-Process @params
54 | }
55 | catch {
56 | throw $_
57 | }
58 | finally {
59 | exit $result.ExitCode
60 | }
61 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVisualStudioCode/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftVisualStudioCode",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftVisualStudioCode\" | Where-Object { $_.Channel -eq \"Stable\" -and $_.Architecture -eq \"x64\" -and $_.Platform -eq \"win32-x64\" } | Select-Object -First 1",
5 | "Title": "Microsoft Visual Studio Code",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "VSCodeSetup-x64-1.107.1.exe",
12 | "Version": "1.107.1",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-VSCode.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft Visual Studio Code 1.107.1 x64",
19 | "Description": "Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such as .NET and Unity).",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://code.visualstudio.com/",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "e7835fa1-1fcb-4abc-a88e-cbc6bf7c09fd"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "msiexec.exe /X \"{AC76BA86-1033-1033-7760-BC15014EA700}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "Registry",
42 | "DetectionMethod": "VersionComparison",
43 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{EA457B21-F73E-494C-ACAB-524FDE069978}_is1",
44 | "ValueName": "DisplayVersion",
45 | "Operator": "greaterThanOrEqual",
46 | "Value": "1.107.1",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/TrackerSoftwarePDFXChangeEditor/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "TrackerSoftwarePDFXChangeEditor",
4 | "Filter": "Get-EvergreenApp -Name \"TrackerSoftwarePDFXChangeEditor\" | Where-Object { $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Tracker Software PDF-XChange Editor",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "EditorV10.x64.msi",
12 | "Version": "10.7.6.404",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/PDFXChangeEditor.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Tracker Software PDF-XChange Editor 10.7.6.404 x64",
19 | "Description": "PDF-XChange Editor - one of the fastest and most feature-rich options available worldwide to create, view, edit and annotate PDF files. PDF-XChange Lite, our award-winning technology that installs as a virtual printer, is included with this product. It can be used to print-to-PDF from Windows applications and features an optimized hybrid engine that significantly increases the quality of conversion for images and image-based text characters.",
20 | "Publisher": "Tracker Software",
21 | "InformationURL": "https://www.tracker-software.com/product/pdf-xchange-editor",
22 | "PrivacyURL": "https://www.tracker-software.com/privacy-policy",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "91579d95-539c-43df-b26d-30f110451f1f"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "MsiExec.exe /X \"{2B1A32F0-ABD0-42C4-A123-7CC642AA3B5E}\" /quiet",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Tracker Software\\PDF Editor",
44 | "FileOrFolder": "PDFXEdit.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "10.7.6.404",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": []
53 | }
54 |
--------------------------------------------------------------------------------
/packages/App/GoogleChrome/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "GoogleChrome",
4 | "Filter": "Get-EvergreenApp -Name \"GoogleChrome\" | Where-Object { $_.Channel -eq \"stable\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Google Chrome",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "googlechromestandaloneenterprise64.msi",
12 | "Version": "143.0.7499.147",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Google-Chrome.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Google Chrome 143.0.7499.147 x64",
19 | "Description": "The browser built by Google. Browse with the power of Google. With Google apps like Gmail, Google Pay, and Google Assistant, Chrome can help you stay productive and get more out of your browser.",
20 | "Publisher": "Google",
21 | "InformationURL": "https://www.google.com/chrome/",
22 | "PrivacyURL": "https://www.google.com.au/intl/en_au/chrome/privacy/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "8c8cc1f6-398c-4c0c-b285-b9141dc60a75"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "basedOnReturnCode",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files\\Google\\Chrome\\Application",
44 | "FileOrFolder": "Chrome.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "143.0.7499.147",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllUsers",
55 | "Intent": "available",
56 | "Notification": "showAll",
57 | "EnableRestartGracePeriod": true,
58 | "RestartGracePeriod": 1440,
59 | "RestartCountDownDisplay": 15,
60 | "RestartNotificationSnooze": 240
61 | }
62 | ]
63 | }
64 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist14x64/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftVcRedist14x64",
4 | "Filter": "Get-VcList -Release \"14\" -Architecture \"x64\"",
5 | "Title": "Visual C++ v14 Redistributable",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "vc_redist.x64.exe",
12 | "Version": "14.50.35719.0",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-VisualStudioCode2022.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Visual C++ v14 Redistributable 14.50.35719.0 x64",
19 | "Description": "This package installs run-time components of Visual C++ libraries and can be used to run such applications on a computer even if it does not have Visual Studio 2026 installed.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://visualstudio.microsoft.com/downloads/",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "b683123c-aceb-45b3-b331-2f131d521df6"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "\"C:\\ProgramData\\Package Cache\\{91ee571b-0e8a-4c65-9eaf-2e2f5fc60c00}\\vc_redist.x64.exe\" /uninstall /quiet /norestart",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "basedOnReturnCode",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "Registry",
42 | "DetectionMethod": "VersionComparison",
43 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{8bdfe669-9705-4184-9368-db9ce581e0e7}",
44 | "ValueName": "DisplayVersion",
45 | "Operator": "greaterThanOrEqual",
46 | "Value": "14.50.35719.0",
47 | "Check32BitOn64System": "true"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllDevices",
55 | "Intent": "required",
56 | "Notification": "showReboot",
57 | "EnableRestartGracePeriod": true,
58 | "RestartGracePeriod": 1440,
59 | "RestartCountDownDisplay": 15,
60 | "RestartNotificationSnooze": 240
61 | }
62 | ]
63 | }
64 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftVcRedist14x86/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftVcRedist14x86",
4 | "Filter": "Get-VcList -Release \"14\" -Architecture \"x86\"",
5 | "Title": "Visual C++ v14 Redistributable",
6 | "Language": "en-US",
7 | "Architecture": "x86"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "vc_redist.x86.exe",
12 | "Version": "14.50.35719.0",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-VisualStudioCode2022.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Visual C++ v14 Redistributable 14.50.35719.0 x86",
19 | "Description": "This package installs run-time components of Visual C++ libraries and can be used to run such applications on a computer even if it does not have Visual Studio 2026 installed.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://visualstudio.microsoft.com/downloads/",
22 | "PrivacyURL": "https://privacy.microsoft.com/privacystatement",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "46de83f6-5244-4b38-bcbc-4ec0664c2b26"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "\"C:\\ProgramData\\Package Cache\\{0e4ccf1b-d073-4cfe-8a24-e86185719b56}\\vc_redist.x86.exe\" /uninstall /quiet /norestart",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "basedOnReturnCode",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "All"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "Registry",
42 | "DetectionMethod": "VersionComparison",
43 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{410c0ee1-00bb-41b6-9772-e12c2828b02f}",
44 | "ValueName": "DisplayVersion",
45 | "Operator": "greaterThanOrEqual",
46 | "Value": "14.50.35719.0",
47 | "Check32BitOn64System": "true"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllDevices",
55 | "Intent": "required",
56 | "Notification": "showReboot",
57 | "EnableRestartGracePeriod": true,
58 | "RestartGracePeriod": 1440,
59 | "RestartCountDownDisplay": 15,
60 | "RestartNotificationSnooze": 240
61 | }
62 | ]
63 | }
64 |
--------------------------------------------------------------------------------
/packages/App/MicrosoftEdge/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "MicrosoftEdge",
4 | "Filter": "Get-EvergreenApp -Name \"MicrosoftEdge\" | Where-Object { $_.Architecture -eq \"x64\" -and $_.Channel -eq \"Stable\" -and $_.Release -eq \"Enterprise\" } | Sort-Object -Property @{ Expression = { [System.Version]$_.Version }; Descending = $true } | Select-Object -First 1",
5 | "Title": "Microsoft Edge",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "MSI",
11 | "SetupFile": "MicrosoftEdgeEnterpriseX64.msi",
12 | "Version": "143.0.3650.80",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Microsoft-Edge.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Microsoft Edge 143.0.3650.80 x64",
19 | "Description": "Microsoft Edge is the fast and secure browser that helps you protect your data and save time and money.",
20 | "Publisher": "Microsoft",
21 | "InformationURL": "https://www.microsoft.com/en-us/edge/features",
22 | "PrivacyURL": "https://go.microsoft.com/fwlink/?LinkId=521839",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "8d6b09d2-466b-4430-a102-9ea9cfb6ddbc"
25 | },
26 | "Program": {
27 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
28 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "UninstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Uninstall.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "basedOnReturnCode",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "x64"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "File",
42 | "DetectionMethod": "Version",
43 | "Path": "C:\\Program Files (x86)\\Microsoft\\Edge\\Application",
44 | "FileOrFolder": "msedge.exe",
45 | "Operator": "greaterThanOrEqual",
46 | "VersionValue": "143.0.3650.80",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllDevices",
55 | "Intent": "required",
56 | "Notification": "showReboot",
57 | "EnableRestartGracePeriod": true,
58 | "RestartGracePeriod": 1440,
59 | "RestartCountDownDisplay": 15,
60 | "RestartNotificationSnooze": 240
61 | }
62 | ]
63 | }
64 |
--------------------------------------------------------------------------------
/packages/App/AdobeAcrobatReaderDCMUI/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "AdobeAcrobatReaderDC",
4 | "Filter": "Get-EvergreenApp -Name \"AdobeAcrobatReaderDC\" | Where-Object { $_.Language -eq \"MUI\" -and $_.Architecture -eq \"x64\" } | Select-Object -First 1",
5 | "Title": "Adobe Acrobat Reader DC",
6 | "Language": "English",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "AcroRdrDCx642500120997_MUI.exe",
12 | "Version": "25.001.20997",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Adobe-AcrobatReader.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Adobe Acrobat Reader DC 25.001.20997 x64",
19 | "Description": "Adobe Acrobat Reader is the free, trusted global standard for viewing, printing, e-signing, sharing, and annotating PDFs. View PDFs, Leave comments or annotate PDFs, Fill, e-sign, and lock your forms, Collaborate better with PDFs.",
20 | "Publisher": "Adobe",
21 | "InformationURL": "https://www.adobe.com/acrobat/pdf-reader.html",
22 | "PrivacyURL": "https://www.adobe.com/privacy.html",
23 | "FeaturedApp": false,
24 | "Categories": [],
25 | "PSPackageFactoryGuid": "a0042672-7240-4312-892e-39623320c0a3"
26 | },
27 | "Program": {
28 | "InstallTemplate": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
29 | "InstallCommand": "powershell.exe -ExecutionPolicy Bypass -NonInteractive -WindowStyle Hidden -File .\\Install.ps1",
30 | "UninstallCommand": "msiexec.exe /X \"{AC76BA86-1033-FF00-7760-BC15014EA700}\" /quiet",
31 | "InstallExperience": "system",
32 | "DeviceRestartBehavior": "basedOnReturnCode",
33 | "AllowAvailableUninstall": false
34 | },
35 | "RequirementRule": {
36 | "MinimumRequiredOperatingSystem": "W10_1809",
37 | "Architecture": "x64"
38 | },
39 | "CustomRequirementRule": [],
40 | "DetectionRule": [
41 | {
42 | "Type": "File",
43 | "DetectionMethod": "Version",
44 | "Path": "C:\\Program Files\\Adobe\\Acrobat DC\\Acrobat",
45 | "FileOrFolder": "Acrobat.exe",
46 | "Operator": "greaterThanOrEqual",
47 | "VersionValue": "25.001.20997",
48 | "Check32BitOn64System": "false"
49 | }
50 | ],
51 | "Dependencies": [],
52 | "Supersedence": [],
53 | "Assignments": [
54 | {
55 | "Type": "AllUsers",
56 | "Intent": "available",
57 | "Notification": "showAll",
58 | "EnableRestartGracePeriod": true,
59 | "RestartGracePeriod": 1440,
60 | "RestartCountDownDisplay": 15,
61 | "RestartNotificationSnooze": 240
62 | }
63 | ]
64 | }
65 |
--------------------------------------------------------------------------------
/packages/App/ImageCustomise/App.json:
--------------------------------------------------------------------------------
1 | {
2 | "Application": {
3 | "Name": "ImageCustomise",
4 | "Filter": "Get-EvergreenApp -Name \"WindowsEnterpriseDefaults\" | Where-Object { $_.Type -eq \"intunewin\" } | Select-Object -First 1",
5 | "Title": "Windows Enterprise Defaults",
6 | "Language": "en-US",
7 | "Architecture": "x64"
8 | },
9 | "PackageInformation": {
10 | "SetupType": "EXE",
11 | "SetupFile": "Install-Defaults.ps1",
12 | "Version": "2510.27.242",
13 | "SourceFolder": "Source",
14 | "OutputFolder": "Package",
15 | "IconFile": "https://github.com/aaronparker/icons/raw/main/companyportal/Package.png"
16 | },
17 | "Information": {
18 | "DisplayName": "Windows Enterprise Defaults 2510.27.242 x86",
19 | "Description": "Customisations to **make Windows 10 & Windows 11 enterprise-ready** by configuring a clean OS default state, uninstalling unnecessary in-box AppX apps, and improving the end-user experience by updating the default user profile and default Start menu. Includes support for localising Windows and setting a time zone.",
20 | "Publisher": "stealthpuppy",
21 | "InformationURL": "https://stealthpuppy.com/image-customise/",
22 | "PrivacyURL": "https://stealthpuppy.com/image-customise/",
23 | "Categories": [],
24 | "PSPackageFactoryGuid": "9fddd581-f505-4760-9bb3-2365db204b38"
25 | },
26 | "Program": {
27 | "InstallTemplate": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -ExecutionPolicy RemoteSigned -File .\\Install-Defaults.ps1",
28 | "InstallCommand": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -ExecutionPolicy RemoteSigned -File .\\Install-Defaults.ps1",
29 | "UninstallCommand": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -ExecutionPolicy RemoteSigned -File .\\Remove-Defaults.ps1",
30 | "InstallExperience": "system",
31 | "DeviceRestartBehavior": "suppress",
32 | "AllowAvailableUninstall": false
33 | },
34 | "RequirementRule": {
35 | "MinimumRequiredOperatingSystem": "W10_1809",
36 | "Architecture": "All"
37 | },
38 | "CustomRequirementRule": [],
39 | "DetectionRule": [
40 | {
41 | "Type": "Registry",
42 | "DetectionMethod": "VersionComparison",
43 | "KeyPath": "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{f38de27b-799e-4c30-8a01-bfdedc622944}",
44 | "ValueName": "DisplayVersion",
45 | "Operator": "greaterThanOrEqual",
46 | "Value": "2510.27.242",
47 | "Check32BitOn64System": "false"
48 | }
49 | ],
50 | "Dependencies": [],
51 | "Supersedence": [],
52 | "Assignments": [
53 | {
54 | "Type": "AllDevices",
55 | "Intent": "required",
56 | "Notification": "hideAll"
57 | }
58 | ]
59 | }
60 |
--------------------------------------------------------------------------------