* Disable "Microsoft account" notification source
* [WinPE] Remove driver addition block for WinPE
WE DO NOT TOUCH THE DRIVERS IN WinPE. There are reports of people getting "Install driver to show hardware" screens all over this repository, and on Discord; and the less drivers we touch in WinPE, the better.
Drivers can still be added to Preinstallation Environments in the following ways:
- Using the driver installation screens
- Firing up "drvload.exe <driver>" in cmd
* [Fix] Added fallback for DISM export command
This is a port of the fix in #3305
* [Cleanup] Removed some comments that no longer make sense
* [Fix] Same DISM export image fallback fix
* Merge branch 'main' into microwin-202506
* [Fix] Improve UI consistency for instructions
Fixes#3394
* Merge branch 'main' into microwin-202506
* [Unattended answer file] Remove it from drive root
The answer file, on the drive root, is not necessary for us to apply it. In fact, it's not even used there
* Merge branch 'main' into microwin-202506
* [MicroWin] June-August 2025 Update (#3) -- Contributions from Callum
* Allow people without compatible hardware or a USB to use MicroWin.
* Update functions/microwin/Microwin-NewUnattend.ps1
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Update Invoke-Microwin.ps1
* Update Microwin-NewUnattend.ps1
* Update Microwin-NewUnattend.ps1
* Add error pop up if ISO Creation fails.
Issue 2653
* Add Disable WPBT Execution to MicroWin.
* Update functions/microwin/Invoke-Microwin.ps1
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* modified: functions/microwin/Invoke-Microwin.ps1
modified: xaml/inputXML.xaml
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Add conversion to ESD (#4)
* Add conversion to ESD
Issue - #3450
* Update Invoke-Microwin.ps1
Added quotes to the file paths. Put all the arguments in 1 string (as that also works fine)
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Update MicroWin contributor list
* Merge branch 'main' into microwin-202506
* Merge branch 'main' into microwin-202506
* [MicroWin] Add automatic configuration settings
Originally implemented in #2618. Adapted to follow the new file structure. And it works.
Though there are issues that will be detailed very soon
* [Fix] Fixed typos, updated descriptions
* Re-add WinPE driver addition
We're not yet sure if that is the actual problem of missing storage controllers. Logs can tell us more about this. Maybe for a future PR?
* [Fix/WPBT] Add spaces to reg key path
Avoid REG failure
* [Fix/XAML] Fix word wrapping issue for checkboxes
* add TIMEDATE.cpl Panel
* Fix standardization
---------
Co-authored-by: Chris Titus <contact@christitus.com>
Co-authored-by: Chris Titus Tech <dfm.titus@gmail.com>
* Checks if password exists for the user, if it doesn't the user is prompted to create one.
It checks if the password is equal to $null using `ValidateCredentials` and if it isn't the variable will be created. If it is equal to $null, a window with text, a textbox and a button will appear asking the user to create a password. That password is then set for the user and the winget installation continues.
* Made this a little more secure
Securing the password variable when it gets created and deleting it after it's done being used.
* Forces the user to input their password and automatically puts their username into the credentials box
* Removed the second greater than 0 check
* Adaptive Busy Icon + Message
- added adaptive color & message of busy indicator
- fixed placement at some places for "Set-WinUtilTaskbaritem" as dialogbox which waits for user input came before
* seperate long Errormessaged for BusyIndication
* add CharacterEllipsis as TextTrimming on BusyText
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* fix BusyIndication + add more detailed one
* removing wip busymessages before process
* Improve reporting of messages significantly (#15)
- Added parameter sets
- Implemented detections for interactive/noninteractive processes
* Fix hidden message action (#16)
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
It just adds the `$null =` from the else to the start of the add line if the package is equal to `na`.
For winget the package added is put into an extra set of $(), because of how it is in the else. I haven't tested it without.
* Implement app installation progress overlay and refactor progress bar handling
* Add overlay background color settings and ensure minimum progress bar value
* Add busy overlay functionality and progress bar updates for installation process
* Refactor busy overlay implementation to dynamically adjust size based on app area dimensions
* Initial Remove Expanded View
* more cleanup
* Add word wrapping for Tooltips
* Update tooltip colors in themes and XAML styles
* Rename Properties for consistency
* More Cleanup, and simplification. Also added support for screenreaders
* Remove unused variables and shorten window naming
* Rename Invoke-WPFUIApps to Initialize-WPFUI and update function calls for consistency
* Rename Invoke-WPFUIApps.ps1 to Initialize-WPFUI.ps1
* Add TODO comments for sidebar UI generation in Initialize-WPFUI function
* Better formatting
A bit cleaner
* Remove unused scripts
This gets rid of file not found errors during setup
* Have a fallback method for Recall fixes
Go back to the delayed disablement procedure if we fail at modifying the manifest
* Ignore Recall disablement when disabled, and more
- If Recall is disabled, don't disable it again. This may be a waste of time
- Disable certain notification sources that I think are quite annoying, like those from Suggested or the Startup App Notification
* Hopefully? Get rid of News and Interests on Win10
Based on PR #3289, add News and Interests removal to MicroWin. Hopefully Windows 10 gets to cooperate this time, compared to last time, where it was quite stubborn.
*This means that people never give up trying to fight against something they don't like*
* Revert "Refactor preferChocolatey system to handle other package managers eas…" (#3323)
This reverts commit 89919494e5.
* Fixed all the things that could possibly break
* Get rid of extra parameter
Package removal fallback fails here. Quite likely a copy from feature disablement
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Refactor Invoke-WPFFixesUpdate and replace Invoke-WPFPanelDISM with Invoke-WPFSystemRepair. Streamline Windows Repair
* Refactor Invoke-WPFSystemRepair to improve function naming, scalablility and fix on english os
* Remove debug switches to minimize clutter and shorten the code
* Replace Write-Verbose with Write-Debug
* Correct the Header Font Size naming and simplify the creation of the Selected Apps Button
* Adjust HeaderFontSize from 18 to 16 for improved readability
* initial visual implementation
- remove idiotic border logic from Invoke-WPFUIElements
- add "application" type & style
- add "radiobutton" type & style
- remove prefer choco checkbox (did not modify logic outside of xaml, so i currently get errors due to that)
* add image support via choco db
- add image support via choco db
- backup image should be taken from unigetui db
- backup backup image is some random package one rn
* add compatibility for every app
* performance improvements
- move get logo to runspace (not working rn)
- readd choco checkbox to mute errors
* add border name
* fix scrollviewer & reimplement logo logic into ui elements
* noimage fix
* add notes
* cleanup & remove nav from search effects
* add button action
* rename buttons
* add sort by options
* move scrollviewer & app buttons into uielements logic
* format logic for app action buttons
* fix app action button logic & move get & clear to sidepanel
* change category of new buttons
* add virtualisation & layouting fixes
- commented out prefer choco logic
- add virtualisation
- layouting improvements
* fix radiobuttons
* LETS GOOO (#12)
* Add Selected Apps Label, Reshuffel the nesting of the checkbox and the label to be able to reference the name from the actual checkbox
* Add visual selection and allow click on the whole app section
* Fix Theme definition to work with theme change
* Fix Highlight on if label or icon is clicked
* change applications.json to powershell object list and refactor UI Creation logic
* Optimization and Add Collapsable Categories
* Add Button functionality for install, uninstall, info, install selected, uninstall selected, clear and implement search
* Rest application.json to Main
* Reset Compile to main
* Pretty much revamp_apps but without changes to applications.json
* Small fixes
* Add Get-Installed Loading Indicator + small fixes
* Re-Add Choco Preference
* Remove Logic from Invoke-WPFUIElements that is Moved to Invoke-WPFUIApps
* Remove Alphabetical List, Sort Apps inside Category Alphabetically
* Small fixes to the Get-Installed function and formatting stuff
* Style for Hidden Checkbox but visible Content
* Hotfix for Category Expansion during search
* Replace Category Label with ToggleButton, Fix Search Bugs
* First Try at implementing a Compact Mode for the App page
* Fix Whitespace when using Search
* Keep the search status when switching between compact and full view
* Fix weird buggy behaviour in regards to switching the Display Mode and using Show-SelectedOnly
* Improve Togglebutton
- add initial implementation of togglebutton style
- add togglebuttons to appnavigation.json
- refractor UI element creation for Togglebutton
- commit preprocessing changes
* Togglebutton fixes
- move dot to the right in style
- cleanup code
- fix arrangement of content
* Add logic to the new ToggleButtons in the sidebar of the install tab and remove old buttons
* reorder buttons & fix Togglebutton toggling if action not possible
- reorder getinstalled and clearselection
- set togglebutton back if no app is selected
* Slight modificatoin to togglebutton style & fix sidebar width
* Add hover effect for the app tiles
* ToggleButtonStyle animation
- add hover animation to white dot
- remove IsPressed trigger
- improve some comments
* disable show selected filter on clear selection
* Add a Popup Dropdown for Selected Apps with the ability to deselect them
* Split up the functions to seperate files like the rest of the repo
* Fix Bug where Scrollviewer dosnt work
* disable autofallback checkbox
* run preprocessing
* remove installation scope
- remove all 3 radiobuttons from appnavigation.json
* remove scrollviewer from WPFUIElements
* toggle showselected on GetInstalled
* remove unused autofallback
---------
Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* fix: nerdfonts uninstall now deletes corresponding registry keys
* change ErrorAction to SilentlyContinue
* fix some code styling
* removed unused files/docs as per Cryostrixx advice
* restored portions of the feature.json
* Fixed lock caused by expected input for DISM
This is the main event
* Miscellaneous file
Don't know why this file was modified by the compile preprocessor
* add WPFToggleRemoveRecommended
- add WPFToggleStartMenuRecommendations
- add reg entrys to modify for toggle
- add non working link bc devdocs are broken in general
* add iseducationenvironment notice
* improve handling if entry does not exist
- add DefaultState property
- add handler for DefaultState in Get-WinUtilToggleStatus
* remove helper console logs
* fix search defaultstate
* added missing default states
* Set Boot Manager entry timeout to 0
Fixes#2562
* Exclude Windows Hello stuff from package removal
* Obscure passwords with Base64 and fix indentation
Fixes#3064
* Fix name of excluded package
* Update comment
It reflects my feelings towards Microsoft when it comes to security a lot better
* Remove jargon of scratch directory options
* Package exclusion improvements
- Removed AppX packages from OS package exclusion list
- Added exclusion of PowerShell ISE (source: Discord server - yes, some people still use the PowerShell ISE)
* Exclude Windows Photo Viewer from dir removal
* Improve copy operation to Ventoy drives
This change may fix the issues where there's a conflict between both Ventoy's and MicroWin's unattended answer files, causing target images to stop working as expected during OOBE
* Add VirtIO functionality and more enhancements
- Added the ability to grab VirtIO Guest Tools
- Modified the description of the Copy ISO files function because it basically had nonsense
* Fix typo (#3104)
* Access specific property of ISO image object
Only show the ISO path. No one is interested in the storage type
* Add detections for expedited app removal
They only affect 24H2 and newer. Earlier releases don't have these expedited apps
* Update message
* Add VirtIO instructions to MicroWin page
* Add DISM command fallback
This fallback is triggered if an exception occurs while getting information with the cmdlets (I couldn't test this on my host as everything magically works now - sometimes it threw the Class not registered error)
* Exclude OpenSSH from package removal
Some people need this to avoid installing third-party programs like PuTTY
* Fixed some more indentation
* move logic to json template
- remove Invoke-WPFToggle.ps1
- generalize Get-WinUtilToggleStatus
- add bingsearch reg key for testing
- use Invoke-WinUtilTweaks for actions
- replace Add-Click with checked & unchecked to make undo work
* add reg params for toggles into tweaks.json
- add all reg keys to tweaks.json into existing toggle entry
- remove unneeded scripts
* fix HKU
- load HKU if needed (for tweaks & GetToggleStatus)
- remove unneeded Invoke-WinUtilNumLock
- has loaded HKU does not load/not stay loaded
* add a lot of error handling
* Bugfix: New-PSDrive seems to return the "hku" itself so weirdly gets prepended to the return value so the result becomes ("hku", $false). In powershell pretty much every variable that exists is interpreted as $true so the toggle for numlock got incorrectly checked
* globally fix HKU error & minimize console feedback
- fix HKU issue globally
- remove some console logs, change some others to write-debug
* update Explorerrefresh
- change Invoke-WinUtilExplorerRefresh to handle refresh and restart
- add restart logic to window snapping Flyout & Suggestions
- rename Invoke-WinUtilExplorerRefresh to Invoke-WinUtilExplorerUpdate
* add explorer restart where needed to take effect
add explorer restart logic for hidden files + Fileextension toggles
* fix missing theme change logic in darkmode toggle
* fix window snapping
- fix issue defining WindowArrangementActive as dword instead of string
* fix bing search
- switch bing search enabled/disabled values
* add a little bit of error handling
- add error handling for Get-WinUtilToggleStatus
---------
Co-authored-by: Marterich <47688561+Marterich@users.noreply.github.com>
* Add @CodingWonders to the About page for his contribution and determination to make WinUtil (and MicroWin) the best software it can be!
* Remove the 'LogoSize' Parameter for About page - Make every sponsor in the sponsors list a link to ChrisTitusTech's Sponsors web link
* Change Theme Option name from 'ConfigTabButtonFontSize' to 'ConfigUpdateButtonFontSize' - Lower its value from 16 to 14
* Change Theme Option name from 'FontSizeHeading' to 'HeadingFontSize' for consistency
* Update 'LinkForegroundColor' for Light Theme to be lighter which'll make link hover color more noticeable
* Update 'Show-CustomDialog' Private Function
- Made a lot of theming/styling choices for Custom Dialogs exposed as parameters.
- Update the documentation for these new parameters in 'Show-CustomDialog' Function.
- Add a Link Hover Effect using 'Add_EVENT' methods (This can be tweaks/tuned-down if needed).
- Made use of 'Title' Parameter for 'Show-CustomDialog' Function inside 'scripts/main.ps1' script, to change Dialog Window Title.
- Now you can change the Logo Size of WinUtil through the 'LogoSize' Theming Option (the option was there, but not used in implementation).
* Preprocessing result
* Fix Settings Popup not closing after losing focus - Add trivial null checks for better debugging of UI code
* Remove unnecessary whitespace indentation in 'main.ps1' script
* Add a new 'Invoke-WPFPopup' Function to Better Handle Showing/Hiding/Toggling of Popups
* Improve 'Invoke-WPFPopup' by @MyDrift-user
Thanks for the improvements :)
---------
Co-authored-by: MyDrift <personal@mdiana.ch>
Co-authored-by: Chris Titus <contact@christitus.com>