UpdateEverything
1.0.0
Minimum PowerShell version
5.1
Installation Options
Owners
Copyright
(c) 2026 Brian Kronberg. Released under the MIT License.
Package Details
Author(s)
- Brian Kronberg
Tags
Windows Update Maintenance winget WindowsUpdate Chocolatey Scoop ScheduledTask
Functions
Update-Everything Register-UpdateEverythingTask Unregister-UpdateEverythingTask Get-UpdateEverythingTask Test-PendingReboot
PSEditions
Dependencies
This module has no dependencies.
Release Notes
# 1.0.0
First release. Updates a Windows machine through every package manager and
update channel it can find, running each as an isolated step so one failure
does not stop the rest.
## Commands
* Update-Everything runs the update pass and returns a result object rather
than exiting, so calling it from a session does not end that session. A
scheduled task turns FailedCount into an exit code itself.
* Register-UpdateEverythingTask, Get-UpdateEverythingTask and
Unregister-UpdateEverythingTask manage the scheduled task.
* Test-PendingReboot reports whether Windows is waiting on a restart, and names
what is holding it.
## Consent
Nothing is installed for the first time without permission. -AllowInstall
approves in advance; an interactive run asks and defaults to No; a
non-interactive run declines and reports the step as skipped.
## Running unelevated
Elevation is checked before it is requested, so a standard user, a machine with
UAC switched off, or an MSIX PowerShell that Windows will not run elevated each
get an explanation instead of a UAC prompt that cannot succeed. -SkipElevation
runs the steps that do not need administrator rights. Logging starts before the
elevation decision, so a run that declines to start still leaves a log.
## Also in this release
* Optional toast notifications through BurntToast, including an urgent restart
notice that breaks through Focus Assist.
* -UpdateSelf reinstalls the module from the main branch on GitHub.
* Per-run step logs and transcripts, pruned by -LogRetentionDays.
* Windows PowerShell 5.1 and PowerShell 7 are both supported. Parameters absent
from the PowerShellGet 1.0.0.1 that Windows ships are probed rather than
assumed.
FileList
- UpdateEverything.nuspec
- Private\Add-SkippedStep.ps1
- Private\Approve-Install.ps1
- Private\Format-LastRunResult.ps1
- Private\Get-CadenceDescription.ps1
- Private\Get-ElevationPolicyNote.ps1
- Private\Get-NthDayOfWeek.ps1
- Private\Get-PowerShellHostPath.ps1
- Private\Get-ToolInstallSource.ps1
- Private\Get-UpdateLogDirectory.ps1
- Private\Get-UpdateTaskArgument.ps1
- Private\Initialize-ConsoleEncoding.ps1
- Private\Initialize-NotificationSupport.ps1
- Private\Invoke-SelfElevation.ps1
- Private\Invoke-Step.ps1
- Private\New-UpdateEverythingResult.ps1
- Private\New-UpdateTaskSettingsSet.ps1
- Private\New-UpdateTaskTrigger.ps1
- Private\Read-TimedChoice.ps1
- Private\Remove-JsonComment.ps1
- Private\Request-InstallConsent.ps1
- Private\Request-RunDecision.ps1
- Private\Resolve-WindowStyle.ps1
- Private\Send-UpdateNotification.ps1
- Private\Set-PwshAsWindowsTerminalDefault.ps1
- Private\Stop-StepAsSkipped.ps1
- Private\Test-AdministratorGroupMember.ps1
- Private\Test-BurntToastSupportsUrgent.ps1
- Private\Test-CanPrompt.ps1
- Private\Test-ElevationCapability.ps1
- Private\Test-InteractiveSession.ps1
- Private\Test-IsAdministrator.ps1
- Private\Test-NotificationModuleAvailable.ps1
- Private\Test-PackagedProcess.ps1
- Private\Test-ParameterSupport.ps1
- Private\Test-ProgressRepaint.ps1
- Private\Test-UacEnabled.ps1
- Private\Write-StepLog.ps1
- Public\Get-UpdateEverythingTask.ps1
- Public\Register-UpdateEverythingTask.ps1
- Public\Test-PendingReboot.ps1
- Public\Unregister-UpdateEverythingTask.ps1
- Public\Update-Everything.ps1
- UpdateEverything.psd1
- UpdateEverything.psm1
- en-us\about_UpdateEverything.help.txt