Skip to content

Driver, BIOS/UEFI and firmware updates for Lenovo computers πŸ‘¨β€πŸ’»

License

Notifications You must be signed in to change notification settings

colinblaise/LSUClient

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

LSUClient PowerShell Module PNG Logo

LSU Client

PowerShell Gallery

A PowerShell module that partially reimplements the "Lenovo System Update" program for convenient, automatable and worry-free driver and system updates for Lenovo computers.

Install-Module -Name 'LSUClient'

Highlight features

  • Does driver, BIOS/UEFI and firmware updates
  • Run locally or through PowerShell Remoting on another machine
  • Allows for fully silent and unattended updates
  • Supports not only business computers but consumer (e.g. IdeaPad) lines too
  • Web-Proxy support (Use -Proxy parameter)
  • Ability to download updates in parallel
  • Accounts for and works around some bugs and mistakes in the official tool
  • Free and Open-source

Examples

Typical use for ones own computer:

$updates = Get-LSUpdate
$updates | Save-LSUpdate -ShowProgress
$updates | Install-LSUpdate -Verbose

To install only packages that can be installed silently and non-interactively (e.g. for unattended, automated runs):

$updates = Get-LSUpdate | Where { $_.Installer.Unattended }
$updates | Save-LSUpdate -Verbose
$updates | Install-LSUpdate -Verbose

By default, Get-LSUpdate will filter out packages that aren't applicable to your computer.
If you want to manually inspect all available packages and disable this behavior use:

Get-LSUpdate -All | Format-List -Property *

You will still get to see which packages were determined applicable and which ones weren't by the value of the IsApplicable boolean property on each package. You may apply your own filtering logic before installing the packages.

For more details, available parameters and guidance on how to use them run Get-Help on the functions in this module.

Misc

  • This module does not clean up downloaded packages at any point. This is by design as it checks for previously downloaded packages and skips them. The default download location is $env:TEMP\LSUPackages - you may delete it yourself
  • Only Windows 10 is supported. Windows 7 compatibility is theoretically feasible for as long as Lenovo provides support for it, but I won't do it. This module makes use of modern PowerShell and modern Windows features and I personally have no interest in Windows 7.
  • If you explicitly Save-LSUpdate before using Install-LSUpdate the whole operation will be faster because when calling Save-LSUpdate directly it downloads the packages in parallel, but calling Install-LSUpdate first will download then install each package after the other

About

Driver, BIOS/UEFI and firmware updates for Lenovo computers πŸ‘¨β€πŸ’»

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PowerShell 100.0%