2023-03-07 14:28:00 -06:00
function Install-WinUtilWinget {
<#
2023-10-19 17:12:55 -05:00
. SYNOPSIS
2024-03-28 14:39:23 -05:00
Installs Winget if it is not already installed .
2023-10-19 17:12:55 -05:00
2023-11-28 16:11:11 -06:00
. DESCRIPTION
2024-03-28 14:39:23 -05:00
This function will download the latest version of Winget and install it . If Winget is already installed , it will do nothing .
2023-03-07 14:28:00 -06:00
#>
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
$isWingetInstalled = Test-WinUtilPackageManager -winget
Try {
if ( $isWingetInstalled -eq " installed " ) {
Write-Host " `n Winget is already installed. `r " -ForegroundColor Green
2023-03-07 14:28:00 -06:00
return
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
} elseif ( $isWingetInstalled -eq " outdated " ) {
Write-Host " `n Winget is Outdated. Continuing with install. `r " -ForegroundColor Yellow
} else {
Write-Host " `n Winget is not Installed. Continuing with install. `r " -ForegroundColor Red
2023-03-07 14:28:00 -06:00
}
2023-10-19 17:12:55 -05:00
# Gets the computer's information
2023-03-07 14:28:00 -06:00
if ( $null -eq $sync . ComputerInfo ) {
$ComputerInfo = Get-ComputerInfo -ErrorAction Stop
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
} else {
2023-03-07 14:28:00 -06:00
$ComputerInfo = $sync . ComputerInfo
}
if ( ( $ComputerInfo . WindowsVersion ) -lt " 1809 " ) {
2024-03-28 14:39:23 -05:00
# Checks if Windows Version is too old for Winget
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
Write-Host " Winget is not supported on this version of Windows (Pre-1809) " -ForegroundColor Red
2023-03-07 14:28:00 -06:00
return
}
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
# Install Winget via GitHub method.
# Used part of my own script with some modification: ruxunderscore/windows-initialization
Write-Host " Downloading Winget Prerequsites `n "
Get-WinUtilWingetPrerequisites
Write-Host " Downloading Winget and License File `r "
Get-WinUtilWingetLatest
Write-Host " Installing Winget w/ Prerequsites `r "
Add-AppxProvisionedPackage -Online -PackagePath $ENV:TEMP \ Microsoft . DesktopAppInstaller . msixbundle -DependencyPackagePath $ENV:TEMP \ Microsoft . VCLibs . x64 . Desktop . appx , $ENV:TEMP \ Microsoft . UI . Xaml . x64 . appx -LicensePath $ENV:TEMP \ License1 . xml
Test 2024 03 30 (#1852)
* Winget Sources fix (#1773)
- Sometimes, if Winget is installed under user-scope, the source isn't properly installed so that the Admin user can properly use Winget.
- This change installs the sources directly from the Winget CDN.
- Fixes #1771
https://github.com/microsoft/winget-cli/discussions/3258#discussioncomment-5951658
* Compile Winutil
* Finished conversion of DISM commands into DISM cmdlets (#1776)
* Continue conversion
Began 2nd stage of DISM command conversion. Almost all commands have been replaced by cmdlets
* Continue conversion (part 2)
Finished part 2 of DISM command to cmdlet conversion
* Add New Toggle to Disable/Enable Widgets found in Taskbar (#1768)
* Compile Winutil
* Fix Search Box Not Showing Apps/Tweaks Checkboxes When typing out Capital-Letters (#1770)
* Compile Winutil
* Add Microsoft Power Automate and Swift toolchain (#1774)
* Add power automate
* Add swift toolchain
* Compile Winutil
* Restart Explorer after Applying/Undoing Classic Right-Click Advance Tweak (#1778)
In general, I've added two lines of code to get the explorer process using 'Get-Process', then passed the process object into 'Stop-Process', Windows will automatically restart explorer, so there's no need to run a new process for explorer.
Note: restarting explorer in the UndoScript might not be necessary, as it works just fine without it, that's according to the tests done by the author of this commit.
* Compile Winutil
* editing edgeremoval.ps1 (#1834)
* editing edgeremoval.ps1
* Compile Winutil
---------
Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com>
* Compile Winutil
* Update Github Actions Auto Close Issues (#1801)
* Update Github Actions Auto Close Issues
* Add try-catch & Error Logging in Github Actions Auto Close Issues
* Add a Break Statement To Skip Checking The Remaining Labels of an Issue in Github Actions Auto Close Issues
* Add tweak (#1837)
* Compile Winutil
* Disable SCOOBE in WPFTweaksTele (#1832)
* Compile Winutil
* Fix 'Disable Storage Sense' Tweak in 'tweaks.json' File (#1843)
This was pointed out in GitHub issue https://github.com/ChrisTitusTech/winutil/issues/1838
* Compile Winutil
* Add 'UndoScript' to 'Enable End Task With Right Click' Tweak in 'tweaks.json' File (#1842)
* Compile Winutil
* - Changed version check for Winget to keep Winget updated to latest version and a couple formatting fixes. (#1829)
* Compile Winutil
* Add 'UndoScript' to 'Disable Hibernation' Tweak in 'teaks.json' File (#1799)
* Compile Winutil
* Added Requested Apps and Update Command Example in 'README.md' File (#1795)
* Add 'UltraVNC' App to 'application.json' File
* Update Command Example under sub-section 'Automation'
This Commit and its changes are related to issue #1767 , url for issue: https://github.com/ChrisTitusTech/winutil/issues/1767
* Add 'OrcaSlicer' App to 'application.json' File
* Add 'Tixati' App to 'application.json' File
* Add 'Unigram' App to 'application.json' File
* Add 'PDFgear' App to 'application.json' File
* Add 'Windows Firewall Control' App to 'application.json' File
* Add 'VistaSwitcher' App to 'application.json' File
* Add 'Windows Auto Dark Mode' App to 'application.json' File
* Add 'CapFrameX' App to 'application.json' File
* Update The Link for 'Unigram' App in 'application.json' File
* Add 'Magic Wormhole' App to 'application.json' File
* Compile Winutil
* Add apps from #250 (#1787)
* Add SQL management
* Add java runtimes
* Add azure data studio
* Compile Winutil
* Update inputXML.xaml (#1845)
- Added UseLayoutRounding="True"
- This may help fix some cases where text may look blurry on screen for some people.
* Compile Winutil
* A Temporary Fix to Compilation Program in 'Compile.ps1' Script (#1844)
For whatever reason, Compiling using the 'Compile.ps1' Script when there's a Single Quote, in the description of an App for example, it'll try "escaping" it by adding another Single Quote, which's kind of weird.
Before there was an Apostrophe, and it'll Compile into Question Marks, probably because the Compile Script doesn't know what an Apostrophe is, or it can't escape it (or for another reason, didn't dig deeper into it), in the end I've made it neither an Apostrophe nor a Single Quote, just the sentence without contractions (Without shortening by combining words).
* Compile Winutil
* Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules (#1830)
* - Changed how WinGet installs and uninstalls are handled, by utilizing and .
* Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules
- Fixed commands for installing and uninstalling programs through WinGet.
- Added NuGet Package Providers (thanks @Marterich)
- Added Microsoft.WinGet.Client Module (thanks @Marterich)
* Compile Winutil
* Reopen #1747 PR (#1818)
* Add fxsound
* Add simplenote
* Add flow launcher
* Add CMake
* Add musescore
* Add jpegview
* Add explorer patcher
* Add lockhunter
* Add BRU
* Add spacesniffer
* Add Quick Look
* Add harmonoid
* Add revolt
* Add link shell extensions
* Add WizFile
* Add HWMonitor
* Add XnView
* Add tabby.sh
* Add signalRGB
* Add autoruns
* Fix typo for 'Autoruns' App in 'applications.json' File
* Remove 'Explorer Patcher' App in 'applications.json' File
as mentioned by Chris's Feedback on https://github.com/ChrisTitusTech/winutil/pull/1818 PR, Explorer Patcher is known to cause Stability Related Issues to Users who use it, removing it from the Applications List would be a better/wiser decision.
* Re-Add 'fxsound' App after Resolving Merge Conflict
* Re-Add 'tabby.sh' App after Resolving Merge Conflict
---------
Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com>
* Compile Winutil
* Fix Github Actions Auto Close Issues not leaving Issues Open (#1847)
* Compile Winutil
* Fix Robocopy Not Copying for Users who have a Space in their name (#1851)
This was pointed out in https://github.com/ChrisTitusTech/winutil/issues/1848 issue
* Compile Winutil
* bug fixes from bad pr
* Compile Winutil
* Better JSON Parsing for Compile Script!! (#1850)
* Better JSON Parsing for Compile Script!!
Rendering Special XML Character should be possible when parsing json files that have some of these special characters, and without the need to worry about them. Try these changes to see what will be affected, and what won't be.
* Undo #1844 PR Changes
The problem that #1844 PR Tried to resolve temporarly, should now be fixed permanently with the previous changes to 'Compile.ps1' Script.
* Compile Winutil
* OO Shutup 10 Tweaks revamped (#1828)
* Add new OOSU10 configs
* Removed old OOSU config, added install and uninstall calls for the new conrfigs
* change filenames, centralize logic in Invoke-WPFOOSU
* Change Config Paths to the CTT main repo
* removed whitespace
* Add -Wait to avoid race condition when OOSU is run together with temp file cleanup
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add catch for restore point errors
* Compile Winutil
---------
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com>
Co-authored-by: Straight <107145976+DaEpicR@users.noreply.github.com>
Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com>
Co-authored-by: Consejos Tecnológicos de Edu <139326298+lCTdE@users.noreply.github.com>
Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com>
2024-04-20 16:38:43 -05:00
Write-Host " Manually adding Winget Sources, from Winget CDN. "
Add-AppxPackage -Path https : / / cdn . winget . microsoft . com / cache / source . msix #Seems some installs of Winget don't add the repo source, this should makes sure that it's installed every time.
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
Write-Host " Winget Installed " -ForegroundColor Green
Test 2024 03 30 (#1852)
* Winget Sources fix (#1773)
- Sometimes, if Winget is installed under user-scope, the source isn't properly installed so that the Admin user can properly use Winget.
- This change installs the sources directly from the Winget CDN.
- Fixes #1771
https://github.com/microsoft/winget-cli/discussions/3258#discussioncomment-5951658
* Compile Winutil
* Finished conversion of DISM commands into DISM cmdlets (#1776)
* Continue conversion
Began 2nd stage of DISM command conversion. Almost all commands have been replaced by cmdlets
* Continue conversion (part 2)
Finished part 2 of DISM command to cmdlet conversion
* Add New Toggle to Disable/Enable Widgets found in Taskbar (#1768)
* Compile Winutil
* Fix Search Box Not Showing Apps/Tweaks Checkboxes When typing out Capital-Letters (#1770)
* Compile Winutil
* Add Microsoft Power Automate and Swift toolchain (#1774)
* Add power automate
* Add swift toolchain
* Compile Winutil
* Restart Explorer after Applying/Undoing Classic Right-Click Advance Tweak (#1778)
In general, I've added two lines of code to get the explorer process using 'Get-Process', then passed the process object into 'Stop-Process', Windows will automatically restart explorer, so there's no need to run a new process for explorer.
Note: restarting explorer in the UndoScript might not be necessary, as it works just fine without it, that's according to the tests done by the author of this commit.
* Compile Winutil
* editing edgeremoval.ps1 (#1834)
* editing edgeremoval.ps1
* Compile Winutil
---------
Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com>
* Compile Winutil
* Update Github Actions Auto Close Issues (#1801)
* Update Github Actions Auto Close Issues
* Add try-catch & Error Logging in Github Actions Auto Close Issues
* Add a Break Statement To Skip Checking The Remaining Labels of an Issue in Github Actions Auto Close Issues
* Add tweak (#1837)
* Compile Winutil
* Disable SCOOBE in WPFTweaksTele (#1832)
* Compile Winutil
* Fix 'Disable Storage Sense' Tweak in 'tweaks.json' File (#1843)
This was pointed out in GitHub issue https://github.com/ChrisTitusTech/winutil/issues/1838
* Compile Winutil
* Add 'UndoScript' to 'Enable End Task With Right Click' Tweak in 'tweaks.json' File (#1842)
* Compile Winutil
* - Changed version check for Winget to keep Winget updated to latest version and a couple formatting fixes. (#1829)
* Compile Winutil
* Add 'UndoScript' to 'Disable Hibernation' Tweak in 'teaks.json' File (#1799)
* Compile Winutil
* Added Requested Apps and Update Command Example in 'README.md' File (#1795)
* Add 'UltraVNC' App to 'application.json' File
* Update Command Example under sub-section 'Automation'
This Commit and its changes are related to issue #1767 , url for issue: https://github.com/ChrisTitusTech/winutil/issues/1767
* Add 'OrcaSlicer' App to 'application.json' File
* Add 'Tixati' App to 'application.json' File
* Add 'Unigram' App to 'application.json' File
* Add 'PDFgear' App to 'application.json' File
* Add 'Windows Firewall Control' App to 'application.json' File
* Add 'VistaSwitcher' App to 'application.json' File
* Add 'Windows Auto Dark Mode' App to 'application.json' File
* Add 'CapFrameX' App to 'application.json' File
* Update The Link for 'Unigram' App in 'application.json' File
* Add 'Magic Wormhole' App to 'application.json' File
* Compile Winutil
* Add apps from #250 (#1787)
* Add SQL management
* Add java runtimes
* Add azure data studio
* Compile Winutil
* Update inputXML.xaml (#1845)
- Added UseLayoutRounding="True"
- This may help fix some cases where text may look blurry on screen for some people.
* Compile Winutil
* A Temporary Fix to Compilation Program in 'Compile.ps1' Script (#1844)
For whatever reason, Compiling using the 'Compile.ps1' Script when there's a Single Quote, in the description of an App for example, it'll try "escaping" it by adding another Single Quote, which's kind of weird.
Before there was an Apostrophe, and it'll Compile into Question Marks, probably because the Compile Script doesn't know what an Apostrophe is, or it can't escape it (or for another reason, didn't dig deeper into it), in the end I've made it neither an Apostrophe nor a Single Quote, just the sentence without contractions (Without shortening by combining words).
* Compile Winutil
* Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules (#1830)
* - Changed how WinGet installs and uninstalls are handled, by utilizing and .
* Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules
- Fixed commands for installing and uninstalling programs through WinGet.
- Added NuGet Package Providers (thanks @Marterich)
- Added Microsoft.WinGet.Client Module (thanks @Marterich)
* Compile Winutil
* Reopen #1747 PR (#1818)
* Add fxsound
* Add simplenote
* Add flow launcher
* Add CMake
* Add musescore
* Add jpegview
* Add explorer patcher
* Add lockhunter
* Add BRU
* Add spacesniffer
* Add Quick Look
* Add harmonoid
* Add revolt
* Add link shell extensions
* Add WizFile
* Add HWMonitor
* Add XnView
* Add tabby.sh
* Add signalRGB
* Add autoruns
* Fix typo for 'Autoruns' App in 'applications.json' File
* Remove 'Explorer Patcher' App in 'applications.json' File
as mentioned by Chris's Feedback on https://github.com/ChrisTitusTech/winutil/pull/1818 PR, Explorer Patcher is known to cause Stability Related Issues to Users who use it, removing it from the Applications List would be a better/wiser decision.
* Re-Add 'fxsound' App after Resolving Merge Conflict
* Re-Add 'tabby.sh' App after Resolving Merge Conflict
---------
Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com>
* Compile Winutil
* Fix Github Actions Auto Close Issues not leaving Issues Open (#1847)
* Compile Winutil
* Fix Robocopy Not Copying for Users who have a Space in their name (#1851)
This was pointed out in https://github.com/ChrisTitusTech/winutil/issues/1848 issue
* Compile Winutil
* bug fixes from bad pr
* Compile Winutil
* Better JSON Parsing for Compile Script!! (#1850)
* Better JSON Parsing for Compile Script!!
Rendering Special XML Character should be possible when parsing json files that have some of these special characters, and without the need to worry about them. Try these changes to see what will be affected, and what won't be.
* Undo #1844 PR Changes
The problem that #1844 PR Tried to resolve temporarly, should now be fixed permanently with the previous changes to 'Compile.ps1' Script.
* Compile Winutil
* OO Shutup 10 Tweaks revamped (#1828)
* Add new OOSU10 configs
* Removed old OOSU config, added install and uninstall calls for the new conrfigs
* change filenames, centralize logic in Invoke-WPFOOSU
* Change Config Paths to the CTT main repo
* removed whitespace
* Add -Wait to avoid race condition when OOSU is run together with temp file cleanup
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add catch for restore point errors
* Compile Winutil
---------
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com>
Co-authored-by: Straight <107145976+DaEpicR@users.noreply.github.com>
Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com>
Co-authored-by: Consejos Tecnológicos de Edu <139326298+lCTdE@users.noreply.github.com>
Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com>
2024-04-20 16:38:43 -05:00
Write-Host " Enabling NuGet and Module... "
Install-PackageProvider -Name NuGet -Force
Install-Module -Name Microsoft . WinGet . Client -Force
Sacrifice to the AV Gods test 24-03-28 branch (#1766)
* Remove the Non-existing 'WPFMiscTweaksPower' found in the 'preset.json' File (#1763)
* Compile Winutil
* Update of Test-WinUtilPackageManager and Install-WinUtilWinget (#1757)
* Updated Install-WinUtilWinget and Test-WinUtilPackageManager
- Updated Test-WinUtilPackageManager to better handle the -Winget param and return a more verbose status.
- Moved many of the "is installed"/"is not installed" outputs to the Test-WinUtilPackageManager function.
- Changed Install-WinUtilWinget to use the GitHub install method as the primary method, and on error use the Chocolatey install method.
- Updated various functions to use the Test-WinUtilPackageManager function.
* Update Install-WinUtilWinget.ps1
- Changed handling of Test-WinUtilPackageManager in Install-WinUtilWinget, to prevent Test-WinUtilPackageManager from printing out to terminal twice.
* Compile Winutil
* Update Paint.NET Winget name. (#1758)
Paint.NET's winget package name changed.
* Compile Winutil
* Fixed Programms names and urls and github actions (#1759)
* Compile Winutil
* trying to fix github actions
* Update applications.json
* Compile Winutil
* updated winget package PaintDotNet
* Compile Winutil
* Update functions.Tests.ps1
* fixing typos in unittesting
* fixed the issue that made pester not to work
* Compile Winutil
* found a bug and fixed it
* Compile Winutil
---------
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
* Detect free space of installation drive and compare it with the ISO size and delete temporary MicroWin files from previous runs (#1761)
* Detect free space of installation drive
Compare the size of the ISO file with the free space of the installation drive (or the drive containing the User files) and, if the free size is below a certain threshold, the script will throw either a warning or an error
* Delete temporary files from previous runs
* Add Simple Feature to keep the Service Startup upon Applying Service Tweaks, but not when Undoing it (#1760)
Added a new parameter that gives freedom of control on whether to disable this feature or not, and of course the simple feature in question.
The way it works is by Getting the service using its name, and see if the Startup Value of this service is equal to the default type that Windows comes with it, if not (The User has changed it in the past), then WinUtil won't change it by default (The KeepServiceStartup is true by default), this is a more desirable behaviour when compared to how it previously worked.
These changes were tested by the Author of this commit, Please read the commit patches for exact details on the changes.
* Compile Winutil
* Sacrifice to the AV Gods
Remove Self Elevation and Disable UAC
---------
Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com>
Co-authored-by: YusufKhalifadev <yusufkhalifadev@gmail.com>
Co-authored-by: YusufKhalifadev <YusufKhalifadev@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
2024-03-30 11:46:29 -05:00
# Winget only needs a refresh of the environment variables to be used.
Write-Output " Refreshing Environment Variables... `n "
$ENV:PATH = [ System.Environment ] :: GetEnvironmentVariable ( " Path " , " Machine " ) + " ; " + [ System.Environment ] :: GetEnvironmentVariable ( " Path " , " User " )
} Catch {
Write-Host " Failure detected while installing via GitHub method. Continuing with Chocolatey method as fallback. " -ForegroundColor Red
# In case install fails via GitHub method.
Try {
Start-Process -Verb runas -FilePath powershell . exe -ArgumentList " choco install winget-cli "
Write-Host " Winget Installed " -ForegroundColor Green
Write-Output " Refreshing Environment Variables... `n "
$ENV:PATH = [ System.Environment ] :: GetEnvironmentVariable ( " Path " , " Machine " ) + " ; " + [ System.Environment ] :: GetEnvironmentVariable ( " Path " , " User " )
} Catch {
throw [ WingetFailedInstall ] :: new ( 'Failed to install!' )
2024-03-28 14:39:23 -05:00
}
2023-03-07 14:28:00 -06:00
}
2024-03-28 14:39:23 -05:00
}