mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2025-07-04 04:03:52 -05:00
Compare commits
3 Commits
24.08.22
...
ae87100c61
Author | SHA1 | Date | |
---|---|---|---|
ae87100c61 | |||
cfb9edbce7 | |||
bcfbce66fd |
@ -52,7 +52,7 @@ If you have Issues, refer to [Known Issues](https://christitustech.github.io/win
|
|||||||
|
|
||||||
These are the sponsors that help keep this project alive with monthly contributions.
|
These are the sponsors that help keep this project alive with monthly contributions.
|
||||||
|
|
||||||
<!-- sponsors --><a href="https://github.com/ysaito8015"><img src="https://github.com/ysaito8015.png" width="60px" alt="Yusuke Saito" /></a><a href="https://github.com/TriHydera"><img src="https://github.com/TriHydera.png" width="60px" alt="TriHydera" /></a><a href="https://github.com/jozozovko"><img src="https://github.com/jozozovko.png" width="60px" alt="" /></a><a href="https://github.com/DelDongo"><img src="https://github.com/DelDongo.png" width="60px" alt="" /></a><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="" /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="Jason A. Diegmueller" /></a><a href="https://github.com/AlanTristar"><img src="https://github.com/AlanTristar.png" width="60px" alt="" /></a><a href="https://github.com/JennJones89"><img src="https://github.com/JennJones89.png" width="60px" alt="" /></a><a href="https://github.com/zepled112"><img src="https://github.com/zepled112.png" width="60px" alt="wyatt" /></a><a href="https://github.com/altugtekiner"><img src="https://github.com/altugtekiner.png" width="60px" alt="" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="" /></a><a href="https://github.com/mmomega"><img src="https://github.com/mmomega.png" width="60px" alt="" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="Stefan" /></a><a href="https://github.com/thaddl"><img src="https://github.com/thaddl.png" width="60px" alt="thaddl" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="Dave Jones" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="Anthony Mendez" /></a><a href="https://github.com/woobe-studio"><img src="https://github.com/woobe-studio.png" width="60px" alt="Michael Wozniak" /></a><a href="https://github.com/xBandaku"><img src="https://github.com/xBandaku.png" width="60px" alt="xPandaku" /></a><a href="https://github.com/claudemods"><img src="https://github.com/claudemods.png" width="60px" alt="Claudemods" /></a><a href="https://github.com/hkolatan"><img src="https://github.com/hkolatan.png" width="60px" alt="Halil Kolatan" /></a><!-- sponsors -->
|
<!-- sponsors --><a href="https://github.com/ysaito8015"><img src="https://github.com/ysaito8015.png" width="60px" alt="Yusuke Saito" /></a><a href="https://github.com/TriHydera"><img src="https://github.com/TriHydera.png" width="60px" alt="TriHydera" /></a><a href="https://github.com/jozozovko"><img src="https://github.com/jozozovko.png" width="60px" alt="" /></a><a href="https://github.com/DelDongo"><img src="https://github.com/DelDongo.png" width="60px" alt="" /></a><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="" /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="Jason A. Diegmueller" /></a><a href="https://github.com/AlanTristar"><img src="https://github.com/AlanTristar.png" width="60px" alt="" /></a><a href="https://github.com/JennJones89"><img src="https://github.com/JennJones89.png" width="60px" alt="" /></a><a href="https://github.com/zepled112"><img src="https://github.com/zepled112.png" width="60px" alt="wyatt" /></a><a href="https://github.com/altugtekiner"><img src="https://github.com/altugtekiner.png" width="60px" alt="" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="" /></a><a href="https://github.com/mmomega"><img src="https://github.com/mmomega.png" width="60px" alt="" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="Stefan" /></a><a href="https://github.com/thaddl"><img src="https://github.com/thaddl.png" width="60px" alt="thaddl" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="Dave Jones" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="Anthony Mendez" /></a><a href="https://github.com/woobe-studio"><img src="https://github.com/woobe-studio.png" width="60px" alt="Michael Wozniak" /></a><a href="https://github.com/xBandaku"><img src="https://github.com/xBandaku.png" width="60px" alt="xPandaku" /></a><a href="https://github.com/claudemods"><img src="https://github.com/claudemods.png" width="60px" alt="Claudemods" /></a><a href="https://github.com/hkolatan"><img src="https://github.com/hkolatan.png" width="60px" alt="Halil Kolatan" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="" /></a><!-- sponsors -->
|
||||||
|
|
||||||
## 🏅 Thanks to all Contributors
|
## 🏅 Thanks to all Contributors
|
||||||
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
||||||
|
@ -6,13 +6,21 @@ function Invoke-WPFFeatureInstall {
|
|||||||
|
|
||||||
#>
|
#>
|
||||||
|
|
||||||
|
param (
|
||||||
|
$FeatureConfig
|
||||||
|
)
|
||||||
|
|
||||||
if($sync.ProcessRunning) {
|
if($sync.ProcessRunning) {
|
||||||
$msg = "[Invoke-WPFFeatureInstall] Install process is currently running."
|
$msg = "[Invoke-WPFFeatureInstall] Install process is currently running."
|
||||||
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($FeatureConfig) {
|
||||||
|
$Features = $FeatureConfig
|
||||||
|
} else {
|
||||||
$Features = (Get-WinUtilCheckBoxes)["WPFFeature"]
|
$Features = (Get-WinUtilCheckBoxes)["WPFFeature"]
|
||||||
|
}
|
||||||
|
|
||||||
Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {
|
Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {
|
||||||
param($Features, $DebugPreference)
|
param($Features, $DebugPreference)
|
||||||
|
@ -6,14 +6,22 @@ function Invoke-WPFInstall {
|
|||||||
|
|
||||||
#>
|
#>
|
||||||
|
|
||||||
|
param (
|
||||||
|
$InstallConfig
|
||||||
|
)
|
||||||
|
|
||||||
if($sync.ProcessRunning) {
|
if($sync.ProcessRunning) {
|
||||||
$msg = "[Invoke-WPFInstall] An Install process is currently running."
|
$msg = "[Invoke-WPFInstall] An Install process is currently running."
|
||||||
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($InstallConfig) {
|
||||||
|
$PackagesToInstall = $InstallConfig
|
||||||
|
} else {
|
||||||
$PackagesToInstall = (Get-WinUtilCheckBoxes)["Install"]
|
$PackagesToInstall = (Get-WinUtilCheckBoxes)["Install"]
|
||||||
Write-Host $PackagesToInstall
|
}
|
||||||
|
|
||||||
if ($PackagesToInstall.Count -eq 0) {
|
if ($PackagesToInstall.Count -eq 0) {
|
||||||
$WarningMsg = "Please select the program(s) to install or upgrade"
|
$WarningMsg = "Please select the program(s) to install or upgrade"
|
||||||
[System.Windows.MessageBox]::Show($WarningMsg, $AppTitle, [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
[System.Windows.MessageBox]::Show($WarningMsg, $AppTitle, [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
||||||
|
@ -263,11 +263,8 @@ public class PowerManagement {
|
|||||||
# reg delete "HKLM\zSOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Orchestrator\UScheduler\$_" /f | Out-Null
|
# reg delete "HKLM\zSOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Orchestrator\UScheduler\$_" /f | Out-Null
|
||||||
|
|
||||||
# When in Offline Image
|
# When in Offline Image
|
||||||
if (Test-Path "HKLM:\zSOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\$_")
|
|
||||||
{
|
|
||||||
reg delete "HKLM\zSOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\$_" /f | Out-Null
|
reg delete "HKLM\zSOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\$_" /f | Out-Null
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
reg add "HKLM\zSOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "SearchboxTaskbarMode" /t REG_DWORD /d 0 /f
|
reg add "HKLM\zSOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "SearchboxTaskbarMode" /t REG_DWORD /d 0 /f
|
||||||
Write-Host "Setting all services to start manually"
|
Write-Host "Setting all services to start manually"
|
||||||
|
@ -6,13 +6,21 @@ function Invoke-WPFtweaksbutton {
|
|||||||
|
|
||||||
#>
|
#>
|
||||||
|
|
||||||
|
param (
|
||||||
|
$TweaksConfig
|
||||||
|
)
|
||||||
|
|
||||||
if($sync.ProcessRunning) {
|
if($sync.ProcessRunning) {
|
||||||
$msg = "[Invoke-WPFtweaksbutton] Install process is currently running."
|
$msg = "[Invoke-WPFtweaksbutton] Install process is currently running."
|
||||||
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($TweaksConfig) {
|
||||||
|
$Tweaks = $TweaksConfig
|
||||||
|
} else {
|
||||||
$Tweaks = (Get-WinUtilCheckBoxes)["WPFTweaks"]
|
$Tweaks = (Get-WinUtilCheckBoxes)["WPFTweaks"]
|
||||||
|
}
|
||||||
|
|
||||||
Set-WinUtilDNS -DNSProvider $sync["WPFchangedns"].text
|
Set-WinUtilDNS -DNSProvider $sync["WPFchangedns"].text
|
||||||
|
|
||||||
|
@ -322,38 +322,45 @@ Add-Type @"
|
|||||||
# maybe this is not the best place to load and execute config file?
|
# maybe this is not the best place to load and execute config file?
|
||||||
# maybe community can help?
|
# maybe community can help?
|
||||||
if ($PARAM_CONFIG) {
|
if ($PARAM_CONFIG) {
|
||||||
Invoke-WPFImpex -type "import" -Config $PARAM_CONFIG
|
|
||||||
if ($PARAM_RUN) {
|
if ($PARAM_RUN) {
|
||||||
while ($sync.ProcessRunning) {
|
$installConfig = Get-Content $PARAM_CONFIG -Raw | ConvertFrom-Json
|
||||||
Start-Sleep -Seconds 5
|
if ($installConfig.WPFTweaks) {
|
||||||
|
write-host "Running Tweaks"
|
||||||
|
Invoke-WPFtweaksbutton -TweaksConfig $installConfig.WPFTweaks
|
||||||
}
|
}
|
||||||
Start-Sleep -Seconds 5
|
if ($installConfig.WPFFeature) {
|
||||||
|
write-host "Installing Features"
|
||||||
Write-Host "Applying tweaks..."
|
Invoke-WPFFeatureInstall -FeatureConfig $installConfig.WPFFeature
|
||||||
Invoke-WPFtweaksbutton
|
|
||||||
while ($sync.ProcessRunning) {
|
|
||||||
Start-Sleep -Seconds 5
|
|
||||||
}
|
}
|
||||||
Start-Sleep -Seconds 5
|
if ($installConfig.WPFInstall) {
|
||||||
|
write-host "Installing Programs"
|
||||||
|
|
||||||
Write-Host "Installing features..."
|
# Create a new array to hold the combined install configurations
|
||||||
Invoke-WPFFeatureInstall
|
$combinedInstallConfig = @()
|
||||||
while ($sync.ProcessRunning) {
|
|
||||||
Start-Sleep -Seconds 5
|
# Iterate over each WPFInstall entry
|
||||||
|
for ($i = 0; $i -lt $installConfig.WPFInstall.Count; $i++) {
|
||||||
|
$wpfInstallEntry = $installConfig.WPFInstall[$i]
|
||||||
|
$installEntry = $installConfig.Install[$i]
|
||||||
|
|
||||||
|
# Create a new object with the combined values
|
||||||
|
$combinedEntry = @{
|
||||||
|
Name = $wpfInstallEntry
|
||||||
|
Winget = $installEntry.winget
|
||||||
|
Choco = $installEntry.choco
|
||||||
}
|
}
|
||||||
|
|
||||||
Start-Sleep -Seconds 5
|
# Add the combined entry to the array
|
||||||
Write-Host "Installing applications..."
|
$combinedInstallConfig += $combinedEntry
|
||||||
while ($sync.ProcessRunning) {
|
|
||||||
Start-Sleep -Seconds 1
|
|
||||||
}
|
|
||||||
Invoke-WPFInstall
|
|
||||||
Start-Sleep -Seconds 5
|
|
||||||
|
|
||||||
Write-Host "Done."
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Invoke the WPFInstall function with the combined configuration
|
||||||
|
Invoke-WPFInstall -InstallConfig $combinedInstallConfig
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Invoke-WPFImpex -type "import" -Config $PARAM_CONFIG
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
# Load Checkboxes and Labels outside of the Filter function only once on startup for performance reasons
|
# Load Checkboxes and Labels outside of the Filter function only once on startup for performance reasons
|
||||||
|
Reference in New Issue
Block a user